/*!***************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./node_modules/slick-carousel/slick/slick.css ***!
  \***************************************************************************************************************************/
/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}

/*!******************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./src/assets/css/style.scss ***!
  \******************************************************************************************************************************************************************************************/
@charset "UTF-8";
/* Document
 * ========================================================================== */
/**
 * 1. Add border box sizing in all browsers (opinionated).
 * 2. Backgrounds do not repeat by default (opinionated).
 */
*,
::before,
::after {
  box-sizing: border-box;
  /* 1 */
  background-repeat: no-repeat;
  /* 2 */ }

/**
 * 1. Add text decoration inheritance in all browsers (opinionated).
 * 2. Add vertical alignment inheritance in all browsers (opinionated).
 */
::before,
::after {
  text-decoration: inherit;
  /* 1 */
  vertical-align: inherit;
  /* 2 */ }

/**
 * 1. Use the default cursor in all browsers (opinionated).
 * 2. Change the line height in all browsers (opinionated).
 * 3. Breaks words to prevent overflow in all browsers (opinionated).
 * 4. Use a 4-space tab width in all browsers (opinionated).
 * 5. Remove the grey highlight on links in iOS (opinionated).
 * 6. Prevent adjustments of font size after orientation changes in iOS.
 */
:where(:root) {
  cursor: default;
  /* 1 */
  line-height: 1.5;
  /* 2 */
  overflow-wrap: break-word;
  /* 3 */
  -moz-tab-size: 4;
  /* 4 */
  -o-tab-size: 4;
     tab-size: 4;
  /* 4 */
  -webkit-tap-highlight-color: transparent;
  /* 5 */
  -webkit-text-size-adjust: 100%;
  /* 6 */ }

/* Sections
 * ========================================================================== */
/**
 * Remove the margin in all browsers (opinionated).
 */
:where(body) {
  margin: 0; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Edge, Firefox, and Safari.
 */
:where(h1) {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
 * ========================================================================== */
/**
 * Remove the margin on nested lists in Chrome, Edge, and Safari.
 */
:where(dl, ol, ul) :where(dl, ol, ul) {
  margin: 0; }

/**
 * 1. Correct the inheritance of border color in Firefox.
 * 2. Add the correct box sizing in Firefox.
 */
:where(hr) {
  color: inherit;
  /* 1 */
  height: 0;
  /* 2 */ }

/**
 * Remove the list style on navigation lists in all browsers (opinionated).
 */
:where(nav) :where(ol, ul) {
  list-style-type: none;
  padding: 0; }

/**
 * Prevent VoiceOver from ignoring list semantics in Safari (opinionated).
 */
:where(nav li)::before {
  content: "\200B";
  float: left; }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 * 3. Prevent overflow of the container in all browsers (opinionated).
 */
:where(pre) {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
  overflow: auto;
  /* 3 */ }

/* Text-level semantics
 * ========================================================================== */
/**
 * Add the correct text decoration in Safari.
 */
:where(abbr[title]) {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; }

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
:where(b, strong) {
  font-weight: bolder; }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
:where(code, kbd, samp) {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * Add the correct font size in all browsers.
 */
:where(small) {
  font-size: 80%; }

/* Embedded content
 * ========================================================================== */
/*
 * Change the alignment on media elements in all browsers (opinionated).
 */
:where(audio, canvas, iframe, img, svg, video) {
  vertical-align: middle; }

/**
 * Remove the border on iframes in all browsers (opinionated).
 */
:where(iframe) {
  border-style: none; }

/**
 * Change the fill color to match the text color in all browsers (opinionated).
 */
:where(svg:not([fill])) {
  fill: currentColor; }

/* Tabular data
 * ========================================================================== */
/**
 * 1. Collapse border spacing in all browsers (opinionated).
 * 2. Correct table border color inheritance in all Chrome, Edge, and Safari.
 * 3. Remove text indentation from table contents in Chrome, Edge, and Safari.
 */
:where(table) {
  border-collapse: collapse;
  /* 1 */
  border-color: inherit;
  /* 2 */
  text-indent: 0;
  /* 3 */ }

/* Forms
 * ========================================================================== */
/**
 * Remove the margin on controls in Safari.
 */
:where(button, input, select) {
  margin: 0; }

/**
 * Correct the inability to style buttons in iOS and Safari.
 */
:where(button, [type="button" i], [type="reset" i], [type="submit" i]) {
  -webkit-appearance: button; }

/**
 * Change the inconsistent appearance in all browsers (opinionated).
 */
:where(fieldset) {
  border: 1px solid #a0a0a0; }

/**
 * Add the correct vertical alignment in Chrome, Edge, and Firefox.
 */
:where(progress) {
  vertical-align: baseline; }

/**
 * 1. Remove the margin in Firefox and Safari.
 * 3. Change the resize direction in all browsers (opinionated).
 */
:where(textarea) {
  margin: 0;
  /* 1 */
  resize: vertical;
  /* 3 */ }

/**
 * 1. Correct the odd appearance in Chrome, Edge, and Safari.
 * 2. Correct the outline style in Safari.
 */
:where([type="search" i]) {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

/**
 * Correct the cursor style of increment and decrement buttons in Safari.
 */
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto; }

/**
 * Correct the text style of placeholders in Chrome, Edge, and Safari.
 */
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54; }

/**
 * Remove the inner padding in Chrome, Edge, and Safari on macOS.
 */
::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * 1. Correct the inability to style upload buttons in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/* Interactive
 * ========================================================================== */
/*
 * Add the correct styles in Safari.
 */
:where(dialog) {
  background-color: white;
  border: solid;
  color: black;
  height: -moz-fit-content;
  height: -webkit-fit-content;
  height: fit-content;
  left: 0;
  margin: auto;
  padding: 1em;
  position: absolute;
  right: 0;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content; }

:where(dialog:not([open])) {
  display: none; }

/*
 * Add the correct display in Safari.
 */
:where(details > summary:first-of-type) {
  display: list-item; }

/* Accessibility
 * ========================================================================== */
/**
 * Change the cursor on busy elements in all browsers (opinionated).
 */
:where([aria-busy="true" i]) {
  cursor: progress; }

/*
 * Change the cursor on control elements in all browsers (opinionated).
 */
:where([aria-controls]) {
  cursor: pointer; }

/*
 * Change the cursor on disabled, not-editable, or otherwise
 * inoperable elements in all browsers (opinionated).
 */
:where([aria-disabled="true" i], [disabled]) {
  cursor: not-allowed; }

/*
 * Change the display on visually hidden accessible elements
 * in all browsers (opinionated).
 */
:where([aria-hidden="false" i][hidden]) {
  display: initial; }

:where([aria-hidden="false" i][hidden]:not(:focus)) {
  clip: rect(0, 0, 0, 0);
  position: absolute; }

/**
 * 個人向け
 */
/**
 * 事業者向け
 */
:root {
  --black: #141414;
  --gray: #757575;
  --dark-gray: #616161;
  --light-gray: #e0e0e0;
  --main-color: #256614;
  --biz-main-color: #B0520B;
  --biz-bg-color: #fff4ed;
  --sub-color: #afc95f;
  --color-bg: #fbf9f5;
  --color-bg2: #edebe2;
  --biz-color-bg2: #ffe3d2;
  --hero-bg: #ffe7c2;
  --biz-hero-bg: #bee3f1;
  --cat1: #b6dbff;
  --cat2: #f8d4b1;
  --cat3: #f5ee8c;
  --task-cat-1: #afc95f;
  --task-cat-2: #f8d4b1;
  --task-cat-3: #f5ee8c;
  --task-cat-4: #b6dbff;
  --error-color: #c10000; }

html {
  font-size: 62.5%;
  height: 100%;
  width: 100%;
  scroll-behavior: smooth;
  overflow-x: hidden; }

body {
  font-family: sans-serif !important;
  color: #141414;
  background: #fbf9f5;
  font-size: 1.6rem;
  position: relative;
  min-height: 100%;
  margin: 0 auto;
  width: 100%; }
  @media (min-width: 1024px) {
    body {
      font-size: 1.6rem; } }

body,
.js-body {
  overflow-x: hidden; }

small {
  line-height: 1.2; }

::-ms-reveal {
  display: none; }

.svg-icon {
  width: 1.6rem; }

.underlined-link {
  text-decoration: underline !important;
  text-underline-offset: 3px; }

.app-store-list {
  display: -ms-grid;
  display: grid;
  gap: 4rem;
  padding: 20px; }
  @media (min-width: 1024px) {
    .app-store-list {
      gap: 1rem;
      -ms-grid-columns: 1fr 1fr;
      grid-template-columns: 1fr 1fr; } }
  .app-store-list .app-store-title {
    font-size: 18px;
    font-weight: 700;
    margin: 0;
    text-align: center; }
  .app-store-list .app-store-wrapper {
    display: -ms-grid;
    display: grid;
    gap: 1rem;
    text-align: center; }
    @media (min-width: 1024px) {
      .app-store-list .app-store-wrapper {
        -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr; } }
    .app-store-list .app-store-wrapper .app-store-qr-code-image {
      width: 120px;
      height: 120px;
      background: #fff; }
    .app-store-list .app-store-wrapper .app-store-subtitle {
      font-weight: 700; }
    .app-store-list .app-store-wrapper .app-store-link-button {
      height: 48px; }

.xid-button {
  font-size: 1.6rem;
  font-weight: bold;
  color: #ffffff;
  background: #222222;
  border-radius: 35px;
  cursor: pointer;
  display: flex;
  gap: 4px;
  align-items: center;
  padding: 6px 20px 6px 12px;
  width: 100%;
  max-width: 320px;
  min-height: 48px;
  max-height: 64px; }
  .xid-button:hover {
    opacity: 0.9; }
  .xid-button .idx-icon {
    width: 40px;
    height: 40px; }

.xid-main-button {
  display: flex !important;
  gap: 10px;
  align-items: center; }
  .xid-main-button .xid-logo {
    width: 40px;
    height: 40px; }

.--buttons-center {
  display: flex;
  justify-content: center; }

.--buttons-col {
  flex-direction: column; }

.nav-main-wrapper,
.flex-wrapper {
  max-width: 1439px;
  margin: auto; }

h1,
h2 {
  color: #256614; }

h1 {
  font-size: 3.1rem;
  line-height: 1.5;
  font-weight: 700;
  color: #141414; }

h2 {
  font-size: 2.2rem;
  color: #141414;
  font-weight: 700; }

p {
  word-break: break-all; }

.font-bold {
  font-weight: 700 !important; }

.font-normal {
  font-weight: 400 !important; }

.font-lighter {
  font-weight: 300 !important; }

.material-icons,
.material-icons-round,
.material-icons-outlined,
.material-symbols-outlined {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  /* Preferred icon size */
  display: inline-block;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  /* Support for all WebKit browsers. */
  -webkit-font-smoothing: antialiased;
  /* Support for Safari and Chrome. */
  text-rendering: optimizeLegibility;
  /* Support for Firefox. */
  -moz-osx-font-smoothing: grayscale;
  /* Support for IE. */
  font-feature-settings: 'liga'; }

.material-icons-outlined,
.material-symbols-outlined {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  /* Preferred icon size */
  display: inline-block;
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  word-wrap: normal;
  white-space: nowrap;
  direction: ltr;
  /* Support for all WebKit browsers. */
  -webkit-font-smoothing: antialiased;
  /* Support for Safari and Chrome. */
  text-rendering: optimizeLegibility;
  /* Support for Firefox. */
  -moz-osx-font-smoothing: grayscale;
  /* Support for IE. */
  font-feature-settings: 'liga'; }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0; }

.key-visual {
  position: relative; }
  @media (min-width: 1024px) {
    .key-visual {
      margin: 0; } }
  .key-visual .kv-img {
    height: 200px;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center; }
    @media (min-width: 1024px) {
      .key-visual .kv-img {
        height: 300px;
        -o-object-fit: cover;
           object-fit: cover;
        -o-object-position: 0 90%;
           object-position: 0 90%; }
        .maternity-handbook .key-visual .kv-img {
          -o-object-position: 0 35%;
             object-position: 0 35%; } }

.buttons {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  margin: 1rem auto;
  flex-flow: column;
  max-width: 220px;
  min-width: 100%; }
  .buttons.recommended-buttons {
    flex-flow: column; }
    @media (min-width: 1024px) {
      .buttons.recommended-buttons {
        flex-flow: row;
        margin: 10px 0; } }
  @media (min-width: 1024px) {
    .buttons {
      justify-content: flex-start;
      flex-flow: column;
      margin: 1rem auto; } }
  .list-view .buttons,
  .map-view .buttons {
    margin: 4rem auto 0; }
  .biz .buttons {
    margin: 0 2rem; }

.buttons-center {
  justify-content: center; }

.button {
  font-size: 1.6rem;
  font-weight: bold;
  width: 100%;
  max-width: 288px;
  min-width: 0;
  border-radius: 30px;
  padding: 12px 10px;
  border: none;
  color: #fff;
  background: var(--main-color);
  position: relative;
  cursor: pointer;
  text-decoration: none;
  line-height: 1.5;
  font-weight: bold;
  height: 46px;
  display: flex;
  justify-content: center;
  align-items: center; }
  .button.--center {
    margin-inline: auto; }
  .biz .button {
    background: var(--biz-main-color); }
  .button .material-icons-outlined {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 2rem; }
  .button:not(.loading-button):hover {
    opacity: 0.7; }
  .button:focus, .button:active {
    opacity: 1; }
  .button:disabled, .button.--disabled {
    opacity: 0.5;
    color: #141414;
    background-color: #c2c2c2;
    cursor: default; }
  .button .buttonDisabled {
    color: #141414;
    background-color: #666; }
  @media (min-width: 1024px) {
    .button {
      margin: 0;
      min-width: 288px;
      line-height: 1; }
      .button:hover {
        opacity: 0.5; } }
  .button a:focus, .button a:active {
    color: #fff !important; }

.main-button {
  font-size: 1.6rem;
  font-weight: bold;
  width: 100%;
  max-width: 288px;
  min-width: 0;
  border-radius: 30px;
  padding: 12px 10px;
  border: none;
  color: #fff;
  background: var(--main-color);
  position: relative;
  cursor: pointer;
  text-decoration: none;
  line-height: 1.5;
  font-weight: bold;
  height: 46px;
  display: flex;
  justify-content: center;
  align-items: center; }
  .main-button.--center {
    margin-inline: auto; }
  .biz .main-button {
    background: var(--biz-main-color); }
  .main-button .material-icons-outlined {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 2rem; }
  .main-button:not(.loading-button):hover {
    opacity: 0.7; }
  .main-button:focus, .main-button:active {
    opacity: 1; }
  .main-button:disabled, .main-button.--disabled {
    opacity: 0.5;
    color: #141414;
    background-color: #c2c2c2;
    cursor: default; }
  .main-button .buttonDisabled {
    color: #141414;
    background-color: #666; }
  @media (min-width: 1024px) {
    .main-button {
      margin: 0;
      min-width: 288px;
      line-height: 1; }
      .main-button:hover {
        opacity: 0.5; } }
  .main-button a:focus, .main-button a:active {
    color: #fff !important; }

.button-center {
  margin: auto; }

.full-width-fix {
  width: 120%; }

.biz {
  background: var(--biz-bg-color); }

.form-action-center {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2rem; }

.add-button {
  background: #ccc;
  text-align: center;
  margin: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 13px;
  position: relative;
  height: unset;
  border-radius: 4rem;
  font-size: 1.6rem;
  line-height: 1.1;
  text-decoration: none;
  cursor: pointer;
  font-weight: normal;
  padding-inline: 40px;
  width: 100%; }
  .add-button span,
  .add-button p {
    max-width: 150px; }

.add-family-buttons {
  display: flex;
  padding-top: 2rem;
  justify-content: center;
  margin: auto; }
  @media (min-width: 1024px) {
    .add-family-buttons {
      justify-content: flex-start; } }

.sub-button {
  font-size: 1.6rem;
  font-weight: bold;
  width: 100%;
  max-width: 288px;
  min-width: 0;
  border-radius: 30px;
  padding: 12px 10px;
  border: 1px solid currentColor;
  color: var(--main-color);
  background: #fff;
  position: relative;
  cursor: pointer;
  text-decoration: none;
  line-height: 1.5;
  font-weight: bold;
  height: 46px;
  display: flex;
  justify-content: center;
  align-items: center; }
  .sub-button.--center {
    margin-inline: auto; }
  .biz .sub-button {
    border: 1px solid var(--biz-main-color);
    color: var(--biz-main-color); }
  .sub-button .material-icons-outlined {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 2rem;
    color: var(--main-color); }
    .biz .sub-button .material-icons-outlined {
      color: var(--biz-main-color); }
  .sub-button:not(.loading-button):hover {
    opacity: 0.7; }
  .sub-button:focus, .sub-button:active {
    opacity: 1; }
  .sub-button:disabled, .sub-button.--disabled {
    opacity: 0.5;
    color: #141414;
    border: none;
    background-color: #c2c2c2;
    cursor: default; }
    .biz .sub-button:disabled, .biz .sub-button.--disabled {
      color: #141414; }
    .sub-button:disabled .material-icons-outlined, .sub-button.--disabled .material-icons-outlined {
      color: #141414; }
      .biz .sub-button:disabled .material-icons-outlined, .biz .sub-button.--disabled .material-icons-outlined {
        color: #141414; }
  .sub-button .buttonDisabled {
    color: #141414;
    background-color: #666; }
  @media (min-width: 1024px) {
    .sub-button {
      margin: 0;
      min-width: 288px;
      line-height: 1; }
      .sub-button:hover {
        opacity: 0.5; } }
  .sub-button a:focus, .sub-button a:active {
    color: #fff !important; }

.small-button {
  position: absolute;
  top: 7rem;
  right: 2rem;
  color: #fff;
  padding: 0.5rem 1rem;
  background: #256614;
  border: none;
  border-radius: 20px; }
  @media (min-width: 1024px) {
    .small-button {
      top: 3rem;
      right: 4rem;
      margin-right: 2vw; } }
  @media (min-width: 1440px) {
    .small-button {
      margin-right: 100px; } }

.content-title-img {
  width: 40px;
  margin: 40px 0 0;
  position: absolute;
  top: 25px; }
  @media (min-width: 1024px) {
    .content-title-img {
      width: 50px;
      top: -20px; } }
  .map .content-title-img {
    top: 30px; }
    @media (min-width: 1024px) {
      .map .content-title-img {
        top: -20px; } }
  .birth-page .content-title-img {
    width: 60px;
    margin: 80px 0 0 10px;
    position: absolute;
    top: 25px; }
    @media (min-width: 1024px) {
      .birth-page .content-title-img {
        width: 80px;
        top: -40px; } }

.link-button {
  color: #141414;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5px;
  background: none;
  border: none;
  padding: 0.5rem 1rem;
  border-radius: 5px;
  text-decoration: none;
  opacity: 1;
  transition: all 0.3s ease;
  cursor: pointer;
  background: none;
  border: none; }
  .corner-buttons .link-button {
    justify-content: flex-end; }
  @media (min-width: 1024px) {
    .link-button:hover {
      opacity: 0.7;
      color: #141414; } }
  .link-button .material-icons-outlined {
    font-size: 20px; }

.--underline {
  text-decoration: underline; }

:lang(ja) .for-en {
  display: none; }

:lang(en) .for-ja {
  display: none; }

.screen-reader-text {
  display: none; }

img {
  max-width: 100%; }

.logo img {
  height: 40px; }

.logo-footer img {
  height: 50px;
  margin: 0;
  padding-left: 10px; }

a {
  color: #141414;
  text-underline-offset: 3px;
  word-break: break-all; }
  @media (min-width: 1024px) {
    a:hover {
      text-decoration: none;
      opacity: 0.7; }
    .main-button a:active {
      color: #fff; } }
  .login a, a.main-button,
  .filter .current a {
    color: #fff; }

.check {
  font-size: 1.4rem; }

.question-info {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr;
  grid-template-columns: 1fr 1fr; }
  .question-info a {
    align-self: baseline;
    justify-self: flex-end; }
  .question-info dl {
    margin: 0;
    padding: 0;
    display: flex;
    flex-flow: row wrap;
    gap: 1rem; }
    .question-info dl dt {
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
      font-weight: bold; }
    .question-info dl dd {
      margin: 0; }
  .question-info .question-info-cols {
    display: flex;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    gap: 4rem; }
    .question-info .question-info-cols dl {
      display: flex;
      flex-flow: column wrap;
      gap: 1rem;
      margin: 0;
      padding: 0;
      list-style: none; }
      .question-info .question-info-cols dl dt {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        font-weight: bold; }
      .question-info .question-info-cols dl dd {
        margin: 0; }

.smaller {
  font-size: 85.7%; }

.has-mark-char {
  padding-left: 1.5em;
  position: relative; }
  .has-mark-char .mark-char {
    position: absolute;
    left: 0;
    top: 0; }

.list-decimal {
  margin: 1.2em 0;
  padding: 0 0 0 2em;
  list-style: decimal; }
  .list-decimal li {
    margin: 0 0 2rem; }

.list-disc {
  margin: 1.2em 0;
  padding: 0;
  list-style: none; }
  .list-disc li {
    position: relative;
    padding: 0 0 0 1.2em;
    margin: 0 0 1em;
    line-height: 1.5; }
    .list-disc li:last-child {
      margin-bottom: 0; }
    .list-disc li::before {
      content: "";
      width: 5px;
      height: 5px;
      border-radius: 50%;
      background: #000;
      left: 3px;
      top: 0.5em;
      display: block;
      position: absolute; }

.annotation-box {
  font-size: 1.4rem; }

#anchor-head {
  position: absolute;
  top: 0; }

.flex-wrapper {
  display: flex;
  position: relative; }
  .search-results .flex-wrapper,
  .tasks-page .flex-wrapper {
    margin-top: 5rem; }
    @media (min-width: 1024px) {
      .search-results .flex-wrapper,
      .tasks-page .flex-wrapper {
        margin-top: 0; } }
  .flex-wrapper .page-wrapper {
    flex: 1;
    order: 2; }

.prepended-icon,
.prepended-icon.material-icons-outlined {
  vertical-align: middle;
  margin: 0 0.3em 0 0;
  font-size: 2.1rem; }

.page-wrapper {
  margin: 0;
  min-width: 0; }

.breadcrumbs {
  list-style: none;
  margin: 0;
  padding: 0;
  line-height: 2;
  display: flex;
  flex-wrap: wrap; }
  .breadcrumbs::after {
    content: "";
    clear: both;
    display: block; }
  .breadcrumbs li {
    float: left;
    position: relative;
    padding: 0 0 0 20px;
    flex: 0 0 auto;
    max-width: 290px; }
    @media (max-width: 500px) {
      .breadcrumbs li {
        max-width: 50vw; } }
    @media (max-width: 390px) {
      .breadcrumbs li {
        max-width: 35vw; } }
    .breadcrumbs li::before {
      content: ">";
      color: #666666;
      position: absolute;
      left: 8px;
      top: 0; }
    .breadcrumbs li:first-child {
      padding-left: 0; }
      .breadcrumbs li:first-child::before {
        display: none; }
    .breadcrumbs li a {
      text-decoration: underline;
      color: inherit; }

@media (min-width: 1024px) {
  h1 {
    font-size: 3.1rem;
    line-height: 1.5;
    margin: 50px 0 60px; }
  h2 {
    font-size: 2.2rem;
    line-height: 1.6;
    margin: 50px 0 20px; }
  h3 {
    font-size: 1.8rem;
    line-height: 1.8;
    margin: 50px 0 20px; }
  h4 {
    font-size: 1.6rem;
    line-height: 1.8;
    margin: 50px 0 20px; }
  .details-page h4 {
    margin-top: 0; }
  h5 {
    font-size: 1.6rem;
    line-height: 1.8;
    margin: 50px 0 20px; }
  h6 {
    font-size: 1.6rem;
    line-height: 1.8;
    margin: 30px 0 15px; } }
  @media (min-width: 1024px) and (min-width: 1024px) {
    h6 {
      font-size: 1.6rem; } }

@media (min-width: 1024px) {
  .indent {
    margin-left: 2.3rem; }
  .info-box {
    background: #fff;
    padding: 25px 30px;
    margin-bottom: 30px; }
    .info-box > :first-child {
      margin-top: 0; }
    .info-box > :last-child {
      margin-bottom: 0; }
  .main {
    line-height: 2; }
    .main .container {
      max-width: 1200px;
      margin: 0 auto;
      padding: 60px 10px 40px; }
      .event-calendar-page .main .container {
        max-width: 1439px; }
    .main .content-title {
      margin: 20px 0px 20px;
      padding-bottom: 8px;
      border-bottom: 5px solid var(--main-color); }
      .main .content-title::after {
        content: "";
        clear: both;
        display: block; }
      .biz .main .content-title {
        border-bottom: 5px solid var(--biz-main-color); }
      .main .content-title h1 {
        float: left;
        font-size: 3.1rem;
        margin: 0;
        word-break: break-all;
        line-height: 1.2; }
        .main .content-title h1 span {
          display: inline-block;
          white-space: nowrap; }
      .main .content-title h2, .main .content-title h3 {
        margin: 30px 0 0; }
      .main .content-title + .section,
      .main .content-title + .for-sp + .section {
        margin-top: 20px; } }

.content-subtitle h2 {
  padding: 0;
  margin: 0;
  font-weight: 300;
  font-size: 1.6rem; }

@media (max-width: 1023px) {
  h1 {
    font-size: 3.1rem;
    line-height: 1.5; }
  h2 {
    font-size: 2.2rem;
    line-height: 1.6; }
  h3 {
    font-size: 1.6rem;
    line-height: 1.8; }
  h4 {
    font-size: 1.6rem;
    line-height: 1.8; }
  h5 {
    font-size: 1.6rem;
    line-height: 1.8;
    margin: 50px 0 20px; }
  h6 {
    font-size: 1.6rem;
    line-height: 1.8;
    margin: 30px 0 10px; }
  p {
    line-height: 2.2rem; }
    .task-text p {
      word-break: break-word;
      overflow-wrap: break-word;
      white-space: normal; }
  .logo img {
    height: unset;
    max-height: 40px;
    margin: 0;
    padding-left: 10px; }
  .logo-footer img {
    height: 50px;
    margin: 0;
    padding-left: 10px; }
  .indent {
    margin-left: 2rem; }
  .info-box {
    background: #fff;
    padding: 20px;
    margin-bottom: 30px; }
    .info-box > :first-child {
      margin-top: 0; }
    .info-box > :last-child {
      margin-bottom: 0; }
  .page-wrapper {
    padding-top: 5px; }
  .main {
    line-height: 2; }
    .main .container {
      margin: 0 auto;
      padding: 60px 10px 20px; }
    .main .container-fix {
      width: 110%; }
    .main .content-title {
      margin: 20px 0 10px;
      border-bottom: 5px solid var(--main-color); }
      .main .content-title::after {
        content: "";
        clear: both;
        display: block; }
      .biz .main .content-title {
        border-bottom: 5px solid var(--biz-main-color); }
      .maternity-handbook .main .content-title {
        margin: 10px 0 10px; }
        .maternity-handbook .main .content-title h1 {
          margin: 0; }
      .main .content-title h1 {
        float: lxeft;
        font-size: 3.1rem;
        padding: 0px 0px 10px;
        line-height: 1.4;
        clear: both;
        margin: 0;
        font-size: 2.4rem; }
        .main .content-title h1 span {
          display: inline-block;
          white-space: nowrap; }
      .main .content-title h2, .main .content-title h3 {
        margin: 30px 0 0; }
      .main .content-title + .section {
        margin-top: 15px; }
  .sp-block {
    display: block; } }

@media (min-width: 1024px) {
  .centering-action {
    border-top: 1px solid #ededed;
    display: flex;
    justify-content: space-around;
    align-items: center;
    padding: 30px 0 10px;
    flex-direction: row-reverse; }
    .centering-action .material-icons-outlined {
      vertical-align: middle;
      font-size: 2rem; }
    .centering-action a {
      font-size: 1.4rem; }
      .centering-action a .material-icons-outlined {
        margin-right: 0.5rem; }
    .centering-action .button {
      margin: 0;
      font-size: 1.6rem;
      min-width: 240px;
      color: #fff;
      background: #256614;
      border-radius: 25px;
      border: none;
      position: relative;
      padding: 13px;
      cursor: pointer; }
      .centering-action .button .material-icons-outlined {
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 2rem; } }
    @media (min-width: 1024px) and (min-width: 1024px) {
      .centering-action .button:hover {
        opacity: 0.7; }
      .centering-action .button:focus, .centering-action .button:active {
        opacity: 1; } }

@media (min-width: 1024px) {
      .biz .centering-action .button {
        background: #B0520B; } }

@media (max-width: 1023px) {
  .centering-action {
    border-top: 1px solid #ededed;
    display: flex;
    flex-flow: column;
    margin: 30px 0 0;
    justify-content: center;
    padding: 30px 0 0;
    text-align: center;
    gap: 20px; }
    .centering-action .material-icons-outlined {
      vertical-align: middle;
      font-size: 2rem; }
    .centering-action a {
      font-size: 1.4rem; }
      .centering-action a .material-icons-outlined {
        margin-right: 0.5rem; }
      .centering-action a:disabled {
        opacity: 0.5;
        color: #141414;
        background-color: #c2c2c2;
        cursor: default; }
    .centering-action .button {
      margin: 0 auto;
      font-size: 1.6rem;
      width: 288px;
      color: #fff;
      background: #256614;
      border-radius: 25px;
      border: none;
      position: relative;
      padding: 13px;
      cursor: pointer;
      min-height: unset;
      border-radius: 4rem; }
      .centering-action .button .material-icons-outlined {
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 2rem; } }
    @media (max-width: 1023px) and (min-width: 1024px) {
      .centering-action .button:hover {
        opacity: 0.7; }
      .centering-action .button:focus, .centering-action .button:active {
        opacity: 1; } }

@media (max-width: 1023px) {
      .biz .centering-action .button {
        background: #B0520B; } }

.table-wrapper {
  overflow: auto; }

.table-data {
  width: 100%;
  background: #fff;
  border-collapse: collapse; }
  .table-data.fixed {
    width: 100%;
    table-layout: fixed; }
  .table-data th, .table-data td {
    border: 1px solid #EDEDED;
    padding: 5px 15px; }
  .table-data th {
    background: #f7f7f7; }
    .table-data th[scope="col"] {
      text-align: center; }
    .table-data th[scope="row"] {
      text-align: left; }
  .table-data tr:nth-child(odd) {
    background: #FCFCFC; }

@-webkit-keyframes rotation {
  0% {
    transform: rotate(360deg); }
  100% {
    transform: rotate(0); } }

@keyframes rotation {
  0% {
    transform: rotate(360deg); }
  100% {
    transform: rotate(0); } }

.truncate {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden; }

@media (min-width: 1024px) {
  .pc-block {
    display: block !important; }
  .pc-nowrap {
    flex-wrap: nowrap !important; }
  .for-sp {
    display: none !important; } }

@media (max-width: 1023px) {
  .sp-block {
    display: block !important; }
  .sp-nowrap {
    flex-wrap: nowrap !important; }
  .for-pc {
    display: none !important; } }

@media (min-width: 1024px) {
  .ui-datepicker {
    width: 300px;
    padding: 0;
    border-radius: 5px;
    overflow: hidden; }
    .ui-datepicker .ui-widget-header {
      border: none;
      background: #edebe2;
      padding: 13px 0;
      border-radius: 0; }
      .biz .ui-datepicker .ui-widget-header {
        background: #B0520B; }
    .ui-datepicker .ui-datepicker-title {
      font-size: 1.6rem; }
    .ui-datepicker .ui-datepicker-prev {
      left: 60px;
      top: 11px; }
      .ui-datepicker .ui-datepicker-prev::before {
        font-family: "Material Icons";
        content: "\e5cb";
        font-size: 2.3rem;
        margin: 0; }
      .ui-datepicker .ui-datepicker-prev span {
        display: none; }
    .ui-datepicker .ui-datepicker-next {
      right: 60px;
      top: 11px; }
      .ui-datepicker .ui-datepicker-next::before {
        font-family: "Material Icons";
        content: "\e5cc";
        font-size: 2.3rem;
        margin: 0; }
      .ui-datepicker .ui-datepicker-next span {
        display: none; }
    .ui-datepicker .ui-state-default {
      border: none;
      background: transparent;
      text-align: center; }
    .ui-datepicker .ui-state-active {
      color: inherit; }
    .ui-datepicker .ui-state-hover {
      background: transparent;
      border: none; }
    .ui-datepicker th {
      color: #256614;
      font-size: 1.4rem; }
      .biz .ui-datepicker th {
        color: #B0520B; }
    .ui-datepicker .has-reserve .ui-state-default {
      background: #256614;
      border-radius: 50%;
      color: #fff;
      width: 24px;
      line-height: 24px;
      margin: 0 auto;
      padding: 0; }
  .ui-widget.ui-widget-content {
    border: none; }
  .ui-datepicker table {
    margin: 20px auto;
    width: 80%; } }

@media (max-width: 1023px) {
  .ui-datepicker {
    width: 100%;
    margin: 0 auto;
    padding: 0;
    border-radius: 5px;
    overflow: hidden; }
    .ui-datepicker .ui-widget-header {
      border: none;
      color: #fff;
      background: #edebe2;
      padding: 13px 0;
      border-radius: 0; }
      .biz .ui-datepicker .ui-widget-header {
        background: #B0520B; }
    .ui-datepicker .ui-datepicker-title {
      font-size: 1.6rem; }
    .ui-datepicker .ui-datepicker-prev {
      left: 60px;
      top: 11px; }
      .ui-datepicker .ui-datepicker-prev::before {
        font-family: "Material Icons";
        content: "\e5cb";
        font-size: 2.3rem;
        margin: 0; }
      .ui-datepicker .ui-datepicker-prev span {
        display: none; }
    .ui-datepicker .ui-datepicker-next {
      right: 60px;
      top: 11px; }
      .ui-datepicker .ui-datepicker-next::before {
        font-family: "Material Icons";
        content: "\e5cc";
        font-size: 2.3rem;
        margin: 0; }
      .ui-datepicker .ui-datepicker-next span {
        display: none; }
    .ui-datepicker .ui-state-default {
      border: none;
      background: transparent;
      text-align: center; }
    .ui-datepicker .ui-state-active {
      color: inherit; }
    .ui-datepicker .ui-state-hover {
      background: transparent;
      border: none; }
    .ui-datepicker th {
      color: #256614;
      font-size: 1.4rem; }
      .biz .ui-datepicker th {
        color: #B0520B; }
    .ui-datepicker .has-reserve .ui-state-default {
      background: #256614;
      border-radius: 50%;
      color: #fff;
      width: 24px;
      line-height: 24px;
      margin: 0 auto;
      padding: 0; }
  .ui-widget.ui-widget-content {
    border: none; }
  .ui-datepicker table {
    margin: 20px auto;
    width: 80%; } }

[community_builder-outputRichText_outputRichText-host] {
  overflow: visible !important; }

.column-content.community_layout-column_column {
  padding: 0 !important;
  display: block !important; }

.search-form .search-input input {
  width: 100%;
  padding: 10px 18px;
  border: 1px solid;
  border-radius: 5px; }

.home-carousel-wrapper-acc-mng-def {
  margin-inline: auto; }

@media (min-width: 768px) {
  .home-carousel-wrapper-acc-mng-def .scroll {
    position: absolute;
    bottom: 0;
    right: 50px; }
  .home-carousel-wrapper-acc-mng-def.autoplay .button-pause::before {
    content: "\e034"; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow {
    position: absolute;
    top: 50%;
    width: 2vw;
    height: 2vw;
    min-width: 10px;
    min-height: 10px;
    max-width: 30px;
    max-height: 30px;
    border-radius: 50%;
    border: 1px solid #707377;
    background: transparent;
    transform: translateY(-50%);
    z-index: 6;
    text-indent: -9999px; }
  .application-ranking .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow {
    width: 25px !important;
    height: 25px !important; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-prev {
    left: -6%; }
  .application-ranking .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-prev {
    left: -4% !important; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-prev::before {
    font-family: "Material Icons";
    content: "\e5c4";
    color: #707377;
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    text-indent: 0; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-next {
    right: -6%; }
  .application-ranking .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-next {
    right: -4% !important; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-next::before {
    font-family: "Material Icons";
    content: "\e5c8";
    color: #707377;
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    text-indent: 0; }
  .application-ranking .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-next::before {
    top: 55% !important; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-track,
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-list {
    height: auto; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .tile {
    margin: 0 0 10px;
    position: relative;
    border: 3px solid #f9f9f9;
    width: 20%;
    background: #fff;
    padding: 10px; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .tile .picture {
    transition: transform 20s;
    height: 100px;
    background: no-repeat 50% 50%;
    background-size: cover;
    margin: 0 0 10px; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .tile .title {
    margin: 0 0 10px -10px;
    border-left: 5px solid #ccd1d9;
    padding: 0 0 0 10px;
    font-weight: bold;
    font-size: 1.6rem;
    line-height: 1.2; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .tile .ranking {
    background: #2b2b2b;
    position: absolute;
    left: 0;
    top: 20px;
    font-size: 1.6rem;
    color: #fff;
    padding: 5px 10px;
    font-weight: bold; }
  .home-carousel-wrapper-acc-mng-def:not(.autoplay) .home-carousel .slide .image {
    transition: none;
    transform: scale(1); } }

@media (max-width: 767px) {
  .home-carousel-wrapper-acc-mng-def .scroll {
    position: absolute;
    bottom: 0;
    right: 50px; }
  .home-carousel-wrapper-acc-mng-def.autoplay .button-pause::before {
    content: "\e034"; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow {
    position: absolute;
    top: 50%;
    padding: 0em 0.57em;
    border-radius: 50%;
    border: 1px solid #707377;
    background: transparent;
    transform: translateY(-50%);
    z-index: 6;
    text-indent: -9999px; }
  .application-ranking .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow {
    width: 25px !important;
    height: 25px !important; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-prev {
    left: -6%; }
  .application-ranking .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-prev {
    left: -4% !important; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-prev::before {
    font-family: "Material Icons";
    content: "\e5c4";
    color: #707377;
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    text-indent: 0; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-next {
    right: -6%; }
  .application-ranking .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-next {
    left: -4% !important; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-next::before {
    font-family: "Material Icons";
    content: "\e5c8";
    color: #707377;
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    text-indent: 0; }
  .application-ranking .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-next::before {
    top: 55% !important; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-track,
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-list {
    height: auto; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .tile {
    margin: 0 0 10px;
    position: relative;
    border: 3px solid #f9f9f9;
    width: 20%;
    background: #fff;
    padding: 10px; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .tile .picture {
    transition: transform 20s;
    height: 100px;
    background: no-repeat 50% 50%;
    background-size: cover;
    margin: 0 0 10px; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .tile .title {
    margin: 0 0 10px -10px;
    border-left: 5px solid #ccd1d9;
    padding: 0 0 0 10px;
    font-weight: bold;
    font-size: 1.6rem;
    line-height: 1.2; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .tile .ranking {
    background: #2b2b2b;
    position: absolute;
    left: 0;
    top: 20px;
    font-size: 1.6rem;
    color: #fff;
    padding: 5px 10px;
    font-weight: bold; }
  .home-carousel-wrapper-acc-mng-def:not(.autoplay) .home-carousel .slide .image {
    transition: none;
    transform: scale(1); } }

@media (min-width: 768px) {
  .application-ranking .slick-prev {
    left: -4% !important; }
  .application-ranking .slick-next {
    right: -4% !important; }
  .home-carousel-wrapper-acc-mng-def .scroll {
    position: absolute;
    bottom: 0;
    right: 50px; }
  .home-carousel-wrapper-acc-mng-def.autoplay .button-pause::before {
    content: "\e034"; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow {
    position: absolute;
    top: 50%;
    width: 2vw;
    height: 2vw;
    min-width: 10px;
    min-height: 10px;
    max-width: 30px;
    max-height: 30px;
    border-radius: 50%;
    border: 1px solid #707377;
    background: transparent;
    transform: translateY(-50%);
    z-index: 6;
    text-indent: -9999px; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-prev {
    left: -6%; }
  .application-ranking .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-prev {
    left: -4% !important; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-prev::before {
    font-family: "Material Icons";
    content: "\e5c4";
    color: #707377;
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    text-indent: 0; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-next {
    right: -6%; }
  .application-ranking .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-next {
    right: -4% !important; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-next::before {
    font-family: "Material Icons";
    content: "\e5c8";
    color: #707377;
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    text-indent: 0; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-track,
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-list {
    height: auto; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .tile {
    margin: 0 0 10px;
    position: relative;
    border: 3px solid #f9f9f9;
    width: 20%;
    background: #fff;
    padding: 10px; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .tile .picture {
    transition: transform 20s;
    height: 100px;
    background: no-repeat 50% 50%;
    background-size: cover;
    margin: 0 0 10px; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .tile .title {
    margin: 0 0 10px -10px;
    border-left: 5px solid #ccd1d9;
    padding: 0 0 0 10px;
    font-weight: bold;
    font-size: 1.6rem;
    line-height: 1.2; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .tile .ranking {
    background: #2b2b2b;
    position: absolute;
    left: 0;
    top: 20px;
    font-size: 1.6rem;
    color: #fff;
    padding: 5px 10px;
    font-weight: bold; }
  .home-carousel-wrapper-acc-mng-def:not(.autoplay) .home-carousel .slide .image {
    transition: none;
    transform: scale(1); } }

@media (max-width: 767px) {
  .application-ranking .slick-prev {
    left: -6% !important; }
  .application-ranking .slick-next {
    right: -6% !important; }
  .home-carousel-wrapper-acc-mng-def .scroll {
    position: absolute;
    bottom: 0;
    right: 50px; }
  .home-carousel-wrapper-acc-mng-def.autoplay .button-pause::before {
    content: "\e034"; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow {
    position: absolute;
    top: 50%;
    padding: 0em 0.57em;
    border-radius: 50%;
    border: 1px solid #707377;
    background: transparent;
    transform: translateY(-50%);
    z-index: 6;
    text-indent: -9999px; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-prev {
    left: -6%; }
  .application-ranking .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-prev {
    left: -4% !important; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-prev::before {
    font-family: "Material Icons";
    content: "\e5c4";
    color: #707377;
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    text-indent: 0; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-next {
    right: -6%; }
  .application-ranking .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-next {
    right: -4% !important; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-next::before {
    font-family: "Material Icons";
    content: "\e5c8";
    color: #707377;
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    text-indent: 0; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-track,
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-list {
    height: auto; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .tile {
    margin: 0 0 10px;
    position: relative;
    border: 3px solid #f9f9f9;
    width: 20%;
    background: #fff;
    padding: 10px; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .tile .picture {
    transition: transform 20s;
    height: 100px;
    background: no-repeat 50% 50%;
    background-size: cover;
    margin: 0 0 10px; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .tile .title {
    margin: 0 0 10px -10px;
    border-left: 5px solid #ccd1d9;
    padding: 0 0 0 10px;
    font-weight: bold;
    font-size: 1.6rem;
    line-height: 1.2; }
  .home-carousel-wrapper-acc-mng-def .home-carousel .tile .ranking {
    background: #2b2b2b;
    position: absolute;
    left: 0;
    top: 20px;
    font-size: 1.6rem;
    color: #fff;
    padding: 5px 10px;
    font-weight: bold; }
  .home-carousel-wrapper-acc-mng-def:not(.autoplay) .home-carousel .slide .image {
    transition: none;
    transform: scale(1); } }

@media (min-width: 768px) {
  .home-carousel-wrapper-acc-mng-def .home-carousel .tile {
    margin: 0 0 10px;
    position: relative;
    border: 3px solid #f9f9f9;
    background: #fff;
    padding: 10px;
    height: 240px; } }

@media (min-width: 768px) {
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-track,
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-list {
    height: auto; } }

.section {
  margin: 30px 0;
  scroll-margin-top: 140px; }
  @media (min-width: 1024px) {
    .section {
      scroll-margin-top: 70px; } }
  .section p {
    line-height: 2; }
  .section .section-title {
    border-bottom: 5px solid var(--color-bg2);
    margin: 0 0 10px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between; }
    .section .section-title::after {
      content: "";
      clear: both;
      display: block; }
    .section .section-title .pagination-label p {
      margin: 0; }
    .biz .section .section-title {
      border-bottom: 5px solid var(--biz-color-bg2); }
    .search-bar__section .section .section-title {
      border-bottom: none; }
    .section .section-title::after {
      content: "";
      position: absolute;
      top: 100%;
      left: 0;
      width: 70px;
      height: 5px;
      background-color: var(--main-color); }
      .biz .section .section-title::after {
        background-color: var(--biz-main-color); }
      .search-bar__section .section .section-title::after {
        display: none; }
    .section .section-title .account-name-image {
      float: left;
      width: 50px;
      height: 50px;
      margin: 0 20px 0 0;
      overflow: hidden;
      border-radius: 50%;
      position: relative; }
      .section .section-title .account-name-image img {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        -o-object-fit: cover;
           object-fit: cover;
        max-width: none;
        width: 100%;
        height: 100%; }
      .section .section-title .account-name-image + h2 {
        line-height: 50px; }
    .section .section-title h2 {
      font-size: 2.2rem;
      margin: 0;
      line-height: 1.6; }
    .section .section-title .filter {
      float: right;
      border-radius: 5px;
      background: #fff;
      font-size: 1.4rem;
      padding: 0.3rem 1rem;
      margin: -0.4rem 0; }
      .section .section-title .filter input[type="checkbox"] {
        display: none; }
      .section .section-title .filter label {
        display: block;
        cursor: pointer; }
        .section .section-title .filter label::before {
          font-family: "Material Icons Outlined";
          content: "\e835";
          font-size: 1.6rem;
          color: #ccd1d9;
          vertical-align: middle;
          margin: 0 0.3rem 0 0; }
      .section .section-title .filter input:checked + label::before {
        content: "\e834";
        color: inherit; }
    .section .section-title small {
      color: #666666;
      display: block;
      margin: 10px 0;
      clear: both; }
  .section p + .section-title {
    margin-top: 30px; }
  .section .section-sub-title {
    margin: 60px 0 30px;
    font-size: 1.8rem; }
  .section .section-title + .section-sub-title {
    margin-top: 0; }
  .section p.more {
    text-align: right;
    font-size: 1.4rem;
    line-height: 1.7rem; }
    .section p.more .material-icons-outlined {
      margin: 0 0 0 0.5rem;
      color: inherit;
      font-size: 1.7rem;
      vertical-align: top; }

.section-panel {
  background: #fff;
  margin: 10px auto;
  padding: 15px 20px; }
  .section-panel h2 {
    font-size: 1.8rem;
    margin: 10px 0 25px; }

@media (min-width: 1024px) {
  .section {
    margin: 15px 0; }
    .section p {
      line-height: 2; }
    .section .section-title::after {
      content: "";
      clear: both;
      display: block; }
    .section .section-title .account-name-image {
      float: left;
      width: 50px;
      height: 50px;
      margin: 0 20px 0 0;
      overflow: hidden;
      border-radius: 50%;
      position: relative; }
      .section .section-title .account-name-image img {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        -o-object-fit: cover;
           object-fit: cover;
        max-width: none;
        width: 100%;
        height: 100%; }
      .section .section-title .account-name-image + h2 {
        line-height: 50px; }
    .section .section-title h2 {
      font-size: 2.4rem;
      line-height: 1.6;
      margin: 0 30px 0 0; }
      .section .section-title h2 .material-icons-outlined {
        margin: -0.2rem 1rem 0 0;
        font-size: 1.9rem;
        vertical-align: middle;
        color: #256614;
        font-weight: bold; }
        .biz .section .section-title h2 .material-icons-outlined {
          color: #B0520B; }
    .section .section-title .filter {
      float: right;
      border-radius: 5px;
      background: #fff;
      font-size: 1.4rem;
      padding: 0.3rem 1rem;
      margin: -0.3rem 2rem; }
      .section .section-title .filter input[type="checkbox"] {
        display: none; }
      .section .section-title .filter label {
        display: block;
        cursor: pointer; }
        .section .section-title .filter label::before {
          font-family: "Material Icons Outlined";
          content: "\e835";
          font-size: 2.1rem;
          color: #ccd1d9;
          vertical-align: middle;
          margin: 0 0.8rem 0 0; }
      .section .section-title .filter input:checked + label::before {
        content: "\e834";
        color: inherit; }
    .section .section-title small {
      float: left;
      color: #666666; }
    .section p + .section-title {
      margin-top: 30px; }
    .section .section-sub-title {
      margin: 60px 0 30px;
      font-size: 1.8rem; }
    .section .section-title + .section-sub-title {
      margin-top: 0; }
  .section-panel {
    background: #fff;
    margin: 10px auto;
    padding: 15px 30px; }
    .section-panel h2 {
      margin: 0 0 25px;
      font-size: 1.8rem; } }

.more {
  font-size: 1.4rem;
  line-height: 1.7rem;
  color: inherit;
  margin: 0.7rem 0;
  display: flex;
  justify-content: flex-end; }
  .section-title .more {
    display: block; }
  .more .material-icons-outlined {
    margin: 0 0 0 0.5rem;
    color: inherit;
    font-size: 1.7rem;
    vertical-align: top; }

body.menu-opened {
  overflow: hidden; }

.header__container {
  background: #fff;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 3050;
  height: 60px;
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.1); }

.header__body {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-inline: auto;
  max-width: 1200px; }
  .header__body .logo {
    background: #fff;
    padding: 5px 20px;
    display: flex;
    align-items: center;
    text-decoration: none;
    color: inherit;
    gap: 25px;
    min-height: -webkit-fit-content;
    min-height: -moz-fit-content;
    min-height: fit-content; }
    .header__body .logo .target-label {
      font-size: 1.4rem;
      background: var(--main-color);
      color: #fff;
      padding: 5px;
      white-space: nowrap;
      line-height: 1.2;
      border-radius: 5px; }
      @media (min-width: 1024px) {
        .header__body .logo .target-label {
          font-size: 1.6rem; } }
      .biz .header__body .logo .target-label {
        background: var(--biz-main-color); }
  .header__body .nav-launcher ul {
    display: flex;
    margin: 0;
    padding: 0; }
    .header__body .nav-launcher ul li {
      font-size: 1.4rem;
      text-align: center;
      font-weight: bold;
      border-left: 1px solid #f5f5f4; }
      .header__body .nav-launcher ul li a {
        text-decoration: none;
        display: block;
        padding: 10px 5px;
        height: 60px;
        min-width: 60px;
        max-height: -webkit-fit-content;
        max-height: -moz-fit-content;
        max-height: fit-content; }
        @media (min-width: 1024px) {
          .header__body .nav-launcher ul li a {
            min-width: 68px; } }
      .header__body .nav-launcher ul li .material-icons-outlined {
        display: block;
        font-size: 2rem;
        height: 2rem;
        width: 2rem;
        margin: 0 auto 4px;
        color: var(--main-color); }
        .biz .header__body .nav-launcher ul li .material-icons-outlined {
          color: var(--biz-main-color); }
      .header__body .nav-launcher ul li.logout a {
        color: inherit;
        background: #edebe2;
        white-space: nowrap; }
      .header__body .nav-launcher ul li.login a {
        color: #fff;
        background: var(--main-color); }
        .header__body .nav-launcher ul li.login a .material-icons-outlined {
          color: #fff; }
        .biz .header__body .nav-launcher ul li.login a {
          background: var(--biz-main-color); }
      .header__body .nav-launcher ul li.language a {
        color: #757575; }
        .header__body .nav-launcher ul li.language a .material-icons-outlined {
          color: #256614;
          font-size: 1.6rem;
          padding-top: 0.3rem; }
          .biz .header__body .nav-launcher ul li.language a .material-icons-outlined {
            color: #B0520B; }
      body.menu-opened .header__body .nav-launcher ul li.menu-open {
        display: none; }
      .header__body .nav-launcher ul li.menu-close {
        display: none; }
        body.menu-opened .header__body .nav-launcher ul li.menu-close {
          display: block; }

.header-over-menu {
  position: fixed;
  top: 60px;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3100;
  background: rgba(0, 0, 0, 0.7);
  overflow: hidden;
  display: none; }
  @media (min-width: 1024px) {
    .header-over-menu {
      top: 50px;
      left: 60%;
      right: 0px;
      bottom: 100px;
      background: none; } }
  body.menu-opened .header-over-menu {
    display: block; }
  .header-over-menu .header-over-menu-inner {
    background: #fff;
    position: absolute;
    left: 20px;
    top: 0;
    bottom: 0;
    right: 0;
    overflow: auto;
    transition: all 0.5s;
    transform: translate(100%, 0); }
    @media (min-width: 1024px) {
      .header-over-menu .header-over-menu-inner {
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        transform: translate(0, 0);
        transition: none;
        padding: 10px;
        border-radius: 10px;
        box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
        background: #fff;
        margin: 15px; } }
    .header-over-menu .header-over-menu-inner dl.accessibility {
      margin: 0; }
      .header-over-menu .header-over-menu-inner dl.accessibility > dt {
        background: #d8d8d8;
        font-size: 1.4rem; }
        .header-over-menu .header-over-menu-inner dl.accessibility > dt a {
          padding: 10px 15px;
          text-decoration: none;
          display: block;
          color: inherit;
          position: relative; }
          .header-over-menu .header-over-menu-inner dl.accessibility > dt a .material-icons-outlined {
            color: inherit;
            font-size: 1.6rem;
            margin: -0.2rem 0.5rem 0 0;
            vertical-align: middle; }
          .header-over-menu .header-over-menu-inner dl.accessibility > dt a::after {
            display: block;
            content: "";
            width: 8px;
            height: 8px;
            position: absolute;
            top: 50%;
            right: 20px;
            transform: translateY(-50%) rotate(45deg);
            margin: -2px 0 0;
            border-right: 2px solid #141414;
            border-bottom: 2px solid #141414; }
      .header-over-menu .header-over-menu-inner dl.accessibility.opened > dt a::after {
        transform: translateY(-50%) rotate(225deg);
        margin: 2px 0 0; }
      .header-over-menu .header-over-menu-inner dl.accessibility > dd {
        margin: 0;
        display: none; }
        .header-over-menu .header-over-menu-inner dl.accessibility > dd .material-icons-outlined {
          font-size: 1.8rem;
          margin: 0 1rem 0 0;
          vertical-align: middle;
          color: #256614; }
          .biz .header-over-menu .header-over-menu-inner dl.accessibility > dd .material-icons-outlined {
            color: #B0520B; }
        .header-over-menu .header-over-menu-inner dl.accessibility > dd ul {
          list-style: none;
          padding: 0;
          margin: 0; }
        .header-over-menu .header-over-menu-inner dl.accessibility > dd > ul {
          background: #d8d8d8;
          padding: 0 0 1px; }
          .header-over-menu .header-over-menu-inner dl.accessibility > dd > ul::after {
            content: "";
            clear: both;
            display: block; }
          .header-over-menu .header-over-menu-inner dl.accessibility > dd > ul > li {
            float: left;
            width: 100%;
            font-size: 1.4rem;
            margin-top: 1px;
            padding: 5px 15px;
            background: #fff; }
            .header-over-menu .header-over-menu-inner dl.accessibility > dd > ul > li.sitemap {
              float: left;
              width: 50%;
              padding: 10px 15px; }
            .header-over-menu .header-over-menu-inner dl.accessibility > dd > ul > li.screen-reader {
              float: left;
              width: 50%;
              padding: 10px 15px;
              border-left: 1px solid #d8d8d8; }
            .header-over-menu .header-over-menu-inner dl.accessibility > dd > ul > li a {
              text-decoration: none; }
            .header-over-menu .header-over-menu-inner dl.accessibility > dd > ul > li dl {
              margin: 0; }
              .header-over-menu .header-over-menu-inner dl.accessibility > dd > ul > li dl dt {
                float: left;
                vertical-align: middle;
                line-height: 2.8rem; }
              .header-over-menu .header-over-menu-inner dl.accessibility > dd > ul > li dl dd {
                float: left;
                margin: 0 0 0 1rem;
                vertical-align: middle; }
            .header-over-menu .header-over-menu-inner dl.accessibility > dd > ul > li ul {
              float: left; }
              .header-over-menu .header-over-menu-inner dl.accessibility > dd > ul > li ul li {
                float: left; }
                .header-over-menu .header-over-menu-inner dl.accessibility > dd > ul > li ul li a {
                  display: inline-block;
                  border: 1px solid #c2c2c2;
                  min-width: 3rem;
                  line-height: 2.8rem;
                  padding: 0 1rem;
                  text-align: center;
                  border-radius: 1.5rem; }
                .header-over-menu .header-over-menu-inner dl.accessibility > dd > ul > li ul li.active a {
                  color: #256614;
                  font-weight: bold;
                  border-color: #256614; }
                  .biz .header-over-menu .header-over-menu-inner dl.accessibility > dd > ul > li ul li.active a {
                    color: #B0520B;
                    border-color: #B0520B; }
                .header-over-menu .header-over-menu-inner dl.accessibility > dd > ul > li ul li::before {
                  content: "/";
                  color: #ccd1d9;
                  display: inline-block;
                  margin: 0 5px; }
                .header-over-menu .header-over-menu-inner dl.accessibility > dd > ul > li ul li:first-child::before {
                  display: none; }
    .header-over-menu .header-over-menu-inner .shortcuts-link {
      margin: 0 0 0 -1px;
      padding: 0;
      list-style: none;
      background: #fff; }
      .header-over-menu .header-over-menu-inner .shortcuts-link::after {
        content: "";
        clear: both;
        display: block; }
      .header-over-menu .header-over-menu-inner .shortcuts-link > li {
        float: left;
        width: 50%;
        padding: 1px 0 0 1px; }
        .header-over-menu .header-over-menu-inner .shortcuts-link > li a {
          display: block;
          background-color: #f5f5f4;
          color: inherit;
          font-weight: bold;
          padding: 10px 15px;
          font-size: 1.6rem;
          text-decoration: none; }
          .header-over-menu .header-over-menu-inner .shortcuts-link > li a .material-icons-outlined {
            font-size: 1.8rem;
            margin: 0 1rem 0 0;
            vertical-align: middle;
            color: #256614; }
            .biz .header-over-menu .header-over-menu-inner .shortcuts-link > li a .material-icons-outlined {
              color: #B0520B; }
        .header-over-menu .header-over-menu-inner .shortcuts-link > li.task-search a {
          background: #141414;
          color: #fff; }
          .header-over-menu .header-over-menu-inner .shortcuts-link > li.task-search a .material-icons-outlined {
            color: inherit; }
    .header-over-menu .header-over-menu-inner .account-wrapper {
      background-color: #fbf9f5;
      padding: 25px 10px;
      font-size: 1.4rem; }
      .biz .header-over-menu .header-over-menu-inner .account-wrapper {
        background-color: #e0ded9; }
      .header-over-menu .header-over-menu-inner .account-wrapper > p {
        margin: 0 0 15px;
        color: #141414;
        font-weight: bold;
        line-height: 2; }
      .header-over-menu .header-over-menu-inner .account-wrapper .account {
        background-color: #fff;
        padding: 15px;
        display: flex;
        align-items: center; }
      .header-over-menu .header-over-menu-inner .account-wrapper .point {
        display: flex;
        margin: 1em 0 0;
        padding: 0 0 1rem;
        align-items: center; }
        .header-over-menu .header-over-menu-inner .account-wrapper .point dt {
          color: #666666;
          font-size: 1.4rem;
          line-height: 1.5rem; }
        .header-over-menu .header-over-menu-inner .account-wrapper .point dd {
          margin: 0 0 0 0.8rem;
          color: #256614;
          font-weight: bold;
          font-size: 1.4rem;
          line-height: 1.5rem; }
          .biz .header-over-menu .header-over-menu-inner .account-wrapper .point dd {
            color: #B0520B; }
    .header-over-menu .header-over-menu-inner ul.menu2 {
      margin: 0;
      padding: 0;
      list-style: none;
      border-top: 1px solid #edebe2; }
      .header-over-menu .header-over-menu-inner ul.menu2 li {
        margin: 1px 0 0;
        border-bottom: 1px solid #edebe2; }
        .header-over-menu .header-over-menu-inner ul.menu2 li a {
          display: block;
          text-decoration: none;
          padding: 1.5rem;
          position: relative;
          font-weight: bold;
          font-size: 1.6rem; }
          .header-over-menu .header-over-menu-inner ul.menu2 li a .material-icons-outlined {
            vertical-align: middle;
            font-size: 2rem;
            margin: 0 1rem 0 0;
            color: var(--main-color); }
            .biz .header-over-menu .header-over-menu-inner ul.menu2 li a .material-icons-outlined {
              color: var(--biz-main-color); }
          .header-over-menu .header-over-menu-inner ul.menu2 li a .badge {
            position: absolute;
            right: 20px;
            top: 50%;
            line-height: 2.4rem;
            min-width: 2.4rem;
            color: #fff;
            background: #256614;
            font-size: 1.4rem;
            display: block;
            text-align: center;
            border-radius: 50%;
            transform: translateY(-50%); }
            .biz .header-over-menu .header-over-menu-inner ul.menu2 li a .badge {
              background: #b5a234; }
          .header-over-menu .header-over-menu-inner ul.menu2 li a .point {
            position: absolute;
            right: 20px;
            top: 50%;
            transform: translateY(-50%);
            font-size: 1.4rem;
            font-weight: normal; }
    .header-over-menu .header-over-menu-inner .form-wrap {
      background-color: #ddd;
      padding: 15px 20px; }
      .header-over-menu .header-over-menu-inner .form-wrap .form-element-input {
        position: relative; }
        .header-over-menu .header-over-menu-inner .form-wrap .form-element-input::after {
          font-family: "Material Icons";
          content: "\e8b6";
          display: block;
          position: absolute;
          top: 50%;
          left: 1.5rem;
          transform: translateY(-50%);
          font-size: 1.5em;
          color: #256614; }
          .biz .header-over-menu .header-over-menu-inner .form-wrap .form-element-input::after {
            color: #B0520B; }
        .header-over-menu .header-over-menu-inner .form-wrap .form-element-input input {
          border: 1px solid #e6e9ed;
          height: 3.6rem;
          border-radius: 1.8rem;
          padding: 0 1.8rem 0 4rem;
          width: 100%; }
    .header-over-menu .header-over-menu-inner .info dl {
      margin: 40px 15px;
      font-size: 1.4rem; }
      .header-over-menu .header-over-menu-inner .info dl dt {
        font-weight: bold; }
      .header-over-menu .header-over-menu-inner .info dl dd {
        margin: 0 0 25px; }
    .header-over-menu .header-over-menu-inner p.menu-close {
      margin: 20px 0 0;
      text-align: center; }
      .header-over-menu .header-over-menu-inner p.menu-close a {
        display: inline-block;
        padding: 20px;
        font-size: 1.6rem;
        color: inherit; }
        .header-over-menu .header-over-menu-inner p.menu-close a .material-icons-outlined {
          font-size: 2rem;
          vertical-align: middle;
          width: 2rem;
          margin: -0.2rem 0 0 0.5rem; }

.accessibility-wrapper .container {
  width: 100%; }
  .accessibility-wrapper .container .accessibility {
    background: #fff;
    padding: 1rem 2rem;
    line-height: 1.8rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px; }
    @media (min-width: 1440px) {
      .accessibility-wrapper .container .accessibility {
        border-radius: 0 0 5px 5px; } }
    .accessibility-wrapper .container .accessibility .wrap {
      display: flex;
      align-items: center;
      gap: 20px; }
    .accessibility-wrapper .container .accessibility .material-icons-outlined {
      font-size: 1.8rem;
      margin: 0 1rem 0 0;
      vertical-align: middle;
      color: #256614; }
      .biz .accessibility-wrapper .container .accessibility .material-icons-outlined {
        color: #B0520B; }
    .accessibility-wrapper .container .accessibility ul {
      list-style: none;
      padding: 0;
      margin: 0; }
    .accessibility-wrapper .container .accessibility ul.accessibility-tools {
      padding: 1rem 0;
      float: left; }
      .accessibility-wrapper .container .accessibility ul.accessibility-tools::after {
        content: "";
        clear: both;
        display: block; }
      .accessibility-wrapper .container .accessibility ul.accessibility-tools > li {
        float: left;
        margin: 0 25px 0 0;
        font-size: 1.4rem; }
        .accessibility-wrapper .container .accessibility ul.accessibility-tools > li:last-child {
          margin-right: 0; }
        .accessibility-wrapper .container .accessibility ul.accessibility-tools > li a {
          text-decoration: none; }
        .accessibility-wrapper .container .accessibility ul.accessibility-tools > li dl {
          margin: 0; }
          .accessibility-wrapper .container .accessibility ul.accessibility-tools > li dl dt {
            float: left;
            vertical-align: middle; }
          .accessibility-wrapper .container .accessibility ul.accessibility-tools > li dl dd {
            float: left;
            margin: 0 0 0 1rem;
            vertical-align: middle; }
        .accessibility-wrapper .container .accessibility ul.accessibility-tools > li ul {
          float: left; }
          .accessibility-wrapper .container .accessibility ul.accessibility-tools > li ul li {
            float: left; }
            .accessibility-wrapper .container .accessibility ul.accessibility-tools > li ul li.active a {
              color: #256614;
              text-decoration: underline;
              font-weight: bold; }
              .biz .accessibility-wrapper .container .accessibility ul.accessibility-tools > li ul li.active a {
                color: #B0520B; }
            .accessibility-wrapper .container .accessibility ul.accessibility-tools > li ul li::before {
              content: "/";
              color: #ccd1d9;
              display: inline-block;
              margin: 0 5px; }
            .accessibility-wrapper .container .accessibility ul.accessibility-tools > li ul li:first-child::before {
              display: none; }
    .accessibility-wrapper .container .accessibility .form-wrap {
      float: right; }
      .accessibility-wrapper .container .accessibility .form-wrap .form-element-select {
        float: left;
        width: auto;
        position: relative;
        margin: 0 0 0 5px; }
        .accessibility-wrapper .container .accessibility .form-wrap .form-element-select::before {
          content: "";
          display: block;
          border-top: 4px solid #141414;
          border-left: 4px solid transparent;
          border-right: 4px solid transparent;
          position: absolute;
          top: 50%;
          right: 15px;
          transform: translateY(-50%); }
        .accessibility-wrapper .container .accessibility .form-wrap .form-element-select::after {
          font-family: "Material Icons";
          content: "\e894";
          display: block;
          position: absolute;
          top: 50%;
          left: 1.5rem;
          transform: translateY(-50%);
          font-size: 1.5em;
          color: #256614; }
          .biz .accessibility-wrapper .container .accessibility .form-wrap .form-element-select::after {
            color: #B0520B; }
        .accessibility-wrapper .container .accessibility .form-wrap .form-element-select select {
          padding: 0 1.8rem 0 4rem;
          width: 13rem;
          -webkit-appearance: none;
             -moz-appearance: none;
                  appearance: none;
          font-size: 1.4rem;
          border: 1px solid #e6e9ed;
          height: 3.6rem;
          border-radius: 1.8rem;
          background: #fff; }
      .accessibility-wrapper .container .accessibility .form-wrap .form-element-input {
        float: left;
        position: relative;
        margin: 0 0 0 5px; }
        .accessibility-wrapper .container .accessibility .form-wrap .form-element-input::after {
          font-family: "Material Icons";
          content: "\e8b6";
          display: block;
          position: absolute;
          top: 50%;
          left: 1.5rem;
          transform: translateY(-50%);
          font-size: 1.5em;
          color: #256614; }
          .biz .accessibility-wrapper .container .accessibility .form-wrap .form-element-input::after {
            color: #B0520B; }
        .accessibility-wrapper .container .accessibility .form-wrap .form-element-input input {
          border: 1px solid #e6e9ed;
          height: 3.6rem;
          border-radius: 1.8rem;
          padding: 0 1.8rem 0 4rem;
          width: 14.7rem; }
  .accessibility-wrapper .container .target-label {
    font-size: 1.6rem;
    background: #fbf9f5;
    padding: 7px 10px;
    white-space: nowrap; }
    .biz .accessibility-wrapper .container .target-label {
      background: #e0ded9; }

.nav-main-wrapper {
  max-width: 1064px;
  padding: 20px;
  margin: 0 auto;
  position: relative;
  z-index: 5; }

.nav-main {
  display: flex;
  position: relative;
  overflow: hidden; }
  .nav-main .nav-main-inner {
    flex: 1;
    margin: 0 1px 0 0;
    background: #fff;
    padding: 13px 10px;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    display: flex;
    justify-content: space-between;
    align-items: center; }
  .nav-main .nav-main-link {
    margin: 6px 0;
    padding: 0;
    display: flex;
    gap: 2rem; }
    .nav-main .nav-main-link li {
      line-height: 2rem;
      font-size: 1.6rem; }
      .nav-main .nav-main-link li:last-child {
        margin-right: 0; }
      .nav-main .nav-main-link li a {
        color: #141414;
        font-weight: bold;
        text-decoration: none;
        display: flex;
        justify-content: center;
        align-items: center; }
        @media (max-width: 1120px) {
          .nav-main .nav-main-link li a {
            flex-flow: column; } }
        .nav-main .nav-main-link li a span {
          white-space: nowrap; }
        .nav-main .nav-main-link li a .material-icons-outlined {
          margin: -0.2rem 0.5rem 0 0;
          font-size: 2rem;
          vertical-align: middle;
          position: relative; }
          @media (max-width: 1120px) {
            .nav-main .nav-main-link li a .material-icons-outlined {
              margin: 0; } }
        .nav-main .nav-main-link li a .badge {
          margin: 0 0 0 1rem;
          line-height: 2.4rem;
          min-width: 2.4rem;
          color: #fff;
          background: #256614;
          font-size: 1.4rem;
          display: inline-block;
          border-radius: 50%;
          text-align: center; }
          .biz .nav-main .nav-main-link li a .badge {
            background: #256614; }
  .nav-main .account {
    display: flex;
    align-items: center; }
    .nav-main .account .account-name {
      font-weight: bold; }
      .nav-main .account .account-name span {
        white-space: nowrap; }
      .nav-main .account .account-name .material-icons-outlined {
        font-size: 1.8rem;
        vertical-align: middle;
        margin: 0 0.8rem 0.3rem 0; }
    .nav-main .account .account-name-image {
      display: inline-block;
      width: 34px;
      height: 34px;
      vertical-align: middle;
      margin: 0 10px 0 0;
      position: relative;
      overflow: hidden;
      border-radius: 50%; }
      .nav-main .account .account-name-image img {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        -o-object-fit: cover;
           object-fit: cover;
        max-width: none;
        width: 100%;
        height: 100%; }
    .nav-main .account .point {
      margin: 0 0 0 2rem;
      line-height: 1.4; }
      .nav-main .account .point dt {
        font-size: 1.4rem;
        white-space: nowrap; }
      .nav-main .account .point dd {
        margin: 0;
        font-weight: bold;
        font-size: 1.4rem; }
    .nav-main .account .button {
      border: 1px solid #256614;
      font-weight: bold;
      color: #256614;
      border-radius: 1.7rem;
      padding: 0 1.7rem 0 1.5rem;
      margin-left: 2rem;
      line-height: 3.2rem;
      text-decoration: none;
      font-size: 1.4rem;
      white-space: nowrap; }
      .nav-main .account .button .material-icons-outlined {
        font-size: 1.8rem;
        vertical-align: middle;
        margin: 0 0.8rem 0.3rem 0; }
  .nav-main .login-logout {
    width: 100px;
    min-height: 60px; }
  .nav-main .login,
  .nav-main .logout {
    position: relative;
    height: 100%;
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
    display: flex;
    justify-content: center;
    align-items: center; }
    .nav-main .login a,
    .nav-main .logout a {
      display: flex;
      flex-direction: row;
      gap: 5px;
      color: inherit;
      text-align: center;
      justify-content: center;
      font-size: 1.4rem;
      text-decoration: none;
      font-weight: bold; }
      .nav-main .login a .material-icons-outlined,
      .nav-main .logout a .material-icons-outlined {
        font-size: 2rem;
        vertical-align: middle;
        margin: 0; }
  .nav-main .login {
    color: #fff;
    background: #256614; }
    .biz .nav-main .login {
      color: #fff;
      background: #256614; }
  .nav-main .logout {
    background: #edebe2; }

.page-wrapper .nav-main-wrapper {
  max-width: 1064px;
  padding: 0 20px;
  margin: 3rem auto 2rem; }
  .page-wrapper .nav-main-wrapper .nav-main-inner {
    background: #fff; }
    .page-wrapper .nav-main-wrapper .nav-main-inner .nav-main-link li a {
      color: inherit; }
    .page-wrapper .nav-main-wrapper .nav-main-inner .button {
      color: #256614;
      border-color: #256614; }

@media (max-width: 1020px) {
  .nav-main .nav-main-inner {
    padding: 13px 15px; }
  .nav-main .nav-main-link li {
    margin: 0 2rem 0 0; }
  .nav-main .login-logout {
    width: 110px; } }

.header-menu__container {
  padding: 10px;
  background: #fff; }

.header-menu__search__container {
  display: flex;
  top: 60px;
  position: absolute;
  width: 100%; }
  .header-menu__search__container a:hover,
  .header-menu__search__container a:focus {
    opacity: 1; }

.header-menu__search__button {
  padding: 5px;
  background: #fff;
  background: var(--main-color);
  color: var(--black);
  color: #fff;
  border: none;
  font-size: 1.4rem;
  cursor: pointer;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: normal;
  flex: 1;
  flex-direction: column;
  border-top: 1px solid var(--color-bg2);
  line-height: 1.2;
  gap: 10px;
  font-size: 1.4rem;
  text-align: center;
  white-space: nowrap;
  box-shadow: 3px 7px 6px rgba(0, 0, 0, 0.2);
  border-left: 1px solid var(--color-bg2); }
  @media (max-width: 360px) {
    .header-menu__search__button {
      font-size: 1.4rem;
      font-size: 1.2rem; } }
  .header-menu__search__button input {
    display: none; }
  .header-menu__search__button:hover, .header-menu__search__button:focus {
    opacity: 1;
    color: #fff; }
  .header-menu__search__button:has(input:checked) {
    background: var(--color-bg2);
    color: var(--black);
    font-weight: 700; }
    .header-menu__search__button:has(input:checked) .material-symbols-outlined {
      color: var(--main-color); }
      .biz .header-menu__search__button:has(input:checked) .material-symbols-outlined {
        color: var(--biz-main-color); }
    .biz .header-menu__search__button:has(input:checked) {
      background: var(--biz-bg-color); }
  .header-menu__search__button:first-child {
    border-left: none;
    border-radius: 10px 0 0 10px; }
  .header-menu__search__button:last-child {
    border-radius: 0 10px 10px 0; }
  .biz .header-menu__search__button {
    border-left: 1px solid var(--biz-color-bg2);
    background: var(--biz-main-color); }
  .header-menu__search__button .material-symbols-outlined {
    color: var(--main-color);
    color: #fff; }
    .biz .header-menu__search__button .material-symbols-outlined {
      color: var(--biz-main-color);
      color: #fff; }

.header-menu__content {
  display: flex; }

.header-menu__language-picker .form-element-select {
  height: 100%;
  border-left: 1px solid var(--color-bg2);
  min-width: 70px; }
  .header-menu__language-picker .form-element-select::before {
    right: 5px; }
  .account-box .header-menu__language-picker .form-element-select {
    height: 40px;
    min-width: 110px; }

.header-menu__menu__wrapper {
  display: -ms-grid;
  display: grid;
  top: 60px;
  width: 100%;
  z-index: 1000;
  padding: 0px 0px;
  margin: 0px;
  list-style: none;
  -ms-grid-columns: (1fr)[5];
  grid-template-columns: repeat(5, 1fr);
  border-radius: 20px; }
  @media (max-width: 1023px) {
    .header-menu__menu__wrapper {
      box-shadow: 0px -4px 5px rgba(0, 0, 0, 0.2); } }
  @media (min-width: 1024px) {
    .header-menu__menu__wrapper {
      max-width: 580px; } }
  .header-menu__menu__wrapper.--four-buttons {
    -ms-grid-columns: (1fr)[4];
    grid-template-columns: repeat(4, 1fr); }
  .header-menu__menu__wrapper.--two-buttons {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr); }
  .header-menu__menu__wrapper.--one-button {
    -ms-grid-columns: (1fr)[1];
    grid-template-columns: repeat(1, 1fr); }

.header-menu__menu__item {
  border-left: 1px solid var(--color-bg2); }
  .header-menu__menu__item:first-child {
    border-left: none; }
    .header-menu__menu__item:first-child .header-menu__menu__link {
      border-radius: 20px 0 0 0; }
  .header-menu__menu__item:last-child .header-menu__menu__link {
    border-radius: 0 20px 0 0; }
  @media (min-width: 1024px) {
    .header-menu__menu__item {
      border-top: none;
      border-left: none; } }

.header-menu__menu__link {
  display: flex;
  gap: 5px;
  flex-direction: column;
  align-items: center;
  justify-content: normal;
  text-decoration: none;
  padding: 5px 0;
  position: relative;
  font-weight: bold;
  font-size: 1.4rem;
  background: none;
  border: none;
  width: 100%;
  height: 100%;
  padding-inline: 5px;
  line-height: 1.3;
  text-align: center;
  color: #fff;
  background: var(--main-color); }
  .header-menu__menu__link.--active {
    background: var(--color-bg2);
    color: var(--main-color);
    font-weight: 700; }
    @media (min-width: 1024px) {
      .header-menu__menu__link.--active {
        background: none; } }
    .biz .header-menu__menu__link.--active {
      background: var(--biz-bg-color);
      color: var(--biz-main-color); }
      @media (min-width: 1024px) {
        .biz .header-menu__menu__link.--active {
          background: none; } }
    .header-menu__menu__link.--active .material-icons-outlined {
      color: var(--main-color); }
      .biz .header-menu__menu__link.--active .material-icons-outlined {
        color: var(--biz-main-color); }
  .biz .header-menu__menu__link {
    background: var(--biz-main-color); }
  @media (min-width: 1024px) {
    .header-menu__menu__link {
      color: #141414;
      background: none; }
      .biz .header-menu__menu__link {
        background: none; } }
  .header-menu__menu__link .material-icons-outlined {
    color: var(--main-color);
    font-size: 25px;
    color: #fff; }
    @media (min-width: 1024px) {
      .header-menu__menu__link .material-icons-outlined {
        color: var(--main-color); }
        .biz .header-menu__menu__link .material-icons-outlined {
          color: var(--biz-main-color); } }

.header-menu__logo {
  display: block;
  height: 45px;
  padding-left: 10px; }

.header-drawer__container {
  display: flex;
  flex-direction: column;
  position: absolute;
  top: -15px;
  left: 0;
  right: 0;
  z-index: 1000;
  padding: 0px;
  border-radius: 0 0 5px 5px; }
  @media (max-width: 1023px) {
    .header-drawer__container {
      left: 18px;
      right: 18px; } }
  .header-drawer__container a:hover,
  .header-drawer__container a:focus {
    opacity: 1; }
  .header-drawer__container .accordion-form {
    margin: 0; }
  .header-drawer__container .accordion-form-back {
    background: rgba(0, 0, 0, 0.1);
    z-index: 7200;
    position: relative;
    height: 100vh;
    padding: 0;
    display: none; }
    .header-drawer__container .accordion-form-back.opened {
      display: block; }

.header-drawer__form {
  border-radius: 0 0 5px 5px;
  overflow: hidden;
  box-shadow: 2px 10px 15px rgba(0, 0, 0, 0.2); }
  .header-drawer__form__body {
    background: #fff;
    padding: 10px;
    display: none;
    background: #fff;
    overflow-y: auto;
    background: none;
    padding: 0; }
    .--open .header-drawer__form__body {
      display: block; }
    .header-drawer__form__body dl {
      max-width: 750px;
      margin: 0 auto; }
      .header-drawer__form__body dl.horizon > dt {
        margin: 0;
        padding: 8px 0;
        position: relative;
        font-size: 1.6rem; }
      .header-drawer__form__body dl.horizon > dd {
        margin: 0 0 20px; }
      .header-drawer__form__body dl.vertical > dt {
        margin: 0 0 15px;
        position: relative; }
      .header-drawer__form__body dl.vertical > dd {
        margin: 0 0 20px; }
      .header-drawer__form__body dl .has-icon {
        margin-bottom: 5px; }
      .header-drawer__form__body dl.flex {
        display: flex;
        align-items: center;
        margin: 0 auto 10px;
        color: #666666; }
        .header-drawer__form__body dl.flex dt {
          font-size: 1.6rem;
          font-weight: bold; }
    .header-drawer__form__body input[type="text"],
    .header-drawer__form__body input[type="number"],
    .header-drawer__form__body input[type="password"] {
      border: 1px solid #ddd;
      padding: 10px 18px;
      border-radius: 3px; }
    .header-drawer__form__body textarea {
      border: 1px solid #ddd;
      padding: 10px 18px;
      border-radius: 3px;
      width: 100%;
      height: 6em; }
    .header-drawer__form__body .form-element-select {
      width: 260px; }
      .header-drawer__form__body .form-element-select select {
        border: 1px solid #ddd; }
    @media (min-width: 1024px) {
      .header-drawer__form__body dl {
        max-width: 750px;
        margin: 0 auto; }
        .header-drawer__form__body dl.horizon {
          display: flex;
          flex-wrap: wrap; }
          .header-drawer__form__body dl.horizon > dt {
            width: 220px;
            margin: 0 0 20px;
            padding: 8px 10px 8px 0;
            position: relative; }
          .header-drawer__form__body dl.horizon > dd {
            width: calc(100% - 220px);
            margin: 0 0 20px; }
        .header-drawer__form__body dl.vertical > dt {
          margin: 0 0 15px;
          position: relative; }
        .header-drawer__form__body dl.vertical > dd {
          margin: 0 0 20px; }
        .header-drawer__form__body dl.flex {
          display: flex;
          align-items: center;
          margin: 0 auto 10px;
          color: #666666; }
          .header-drawer__form__body dl.flex dt {
            font-size: 1.6rem;
            font-weight: bold; }
      .header-drawer__form__body input[type="text"],
      .header-drawer__form__body input[type="number"],
      .header-drawer__form__body input[type="password"] {
        border: 1px solid #ddd;
        padding: 10px 18px;
        border-radius: 3px; }
      .header-drawer__form__body textarea {
        border: 1px solid #ddd;
        padding: 10px 18px;
        border-radius: 3px;
        width: 100%;
        height: 6em; }
      .header-drawer__form__body .form-element-select {
        width: 260px; }
        .header-drawer__form__body .form-element-select select {
          border: 1px solid #ddd; } }
  .header-drawer__form__scroll {
    overflow-y: auto;
    max-height: 70vh;
    max-height: 70dvh;
    background: #fff;
    padding-inline: 5px; }
    .header-drawer__form__scroll .section {
      margin: 20px 0; }
    .header-drawer__form__scroll h2 {
      font-size: 1.6rem !important; }
    @media (min-width: 1024px) {
      .header-drawer__form__scroll {
        padding-inline: 20px; } }

.header-drawer__close {
  background: none;
  border: none;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  gap: 5px;
  background: #fff;
  border-top: 1px solid var(--color-bg2);
  cursor: pointer; }

.mr-30 {
  margin-right: 30px; }

.ml-30 {
  margin-left: 30px; }

.mr-70 {
  margin-right: 70px; }

.mr-140 {
  margin-right: 140px; }

.container {
  position: relative; }
  .container .top-page__container {
    padding-top: 0; }

.top-page__hero {
  padding-top: 60px; }

.container.--top-page {
  padding-top: 0; }

.bottom-menu__container {
  display: flex;
  flex-direction: column;
  position: fixed;
  inset: auto 0px 0px;
  width: 100%;
  z-index: 2000;
  padding: 0px;
  border-radius: 0 0 5px 5px;
  box-shadow: 0 5px 5px rgba(0, 0, 0, 0.1); }

.bottom-menu__title {
  background: #fff;
  text-align: center;
  font-weight: 700;
  font-size: 1.6rem; }

.nav-local {
  max-width: 1064px;
  margin: 20px auto;
  padding: 0 20px; }
  .nav-local ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    background: #fff;
    border-radius: 5px; }
    .nav-local ul li {
      flex: 1;
      text-align: center;
      font-size: 1.4rem;
      border-left: 1px solid #fbf9f5; }
      .nav-local ul li:first-child {
        border-left: none; }
      .nav-local ul li a {
        display: block;
        text-decoration: none;
        padding: 7px;
        position: relative;
        font-weight: bold;
        color: inherit;
        min-height: 65px; }
        .nav-local ul li a .material-icons-outlined {
          display: block;
          margin: 5px;
          font-size: 2rem; }
          .biz .nav-local ul li a .material-icons-outlined {
            color: #B0520B; }
        .nav-local ul li a .badge {
          position: absolute;
          top: 20px;
          right: 4px;
          line-height: 2.4rem;
          min-width: 2.4rem;
          color: #fff;
          background: #256614;
          font-size: 1.4rem;
          display: block;
          border-radius: 50%; }
          .biz .nav-local ul li a .badge {
            background: #256614; }
      .nav-local ul li.active a {
        background: #256614;
        color: #fff; }
        .nav-local ul li.active a .material-icons-outlined {
          color: #edebe2; }

@media (min-width: 1024px) {
  .tasks {
    display: flex;
    flex-wrap: wrap;
    margin: 30px -3px; }
    .tasks .task {
      position: relative;
      border: 3px solid #fbf9f5;
      width: 20%;
      background: #fff;
      padding: 10px;
      border-radius: 5px; }
      .tasks .task a {
        text-decoration: none;
        color: inherit; }
      .tasks .task .task-img {
        margin: 0 0 10px; }
      .tasks .task .task-title {
        margin: 0 0 10px -10px;
        border-left: 5px solid #ccd1d9;
        padding: 0 0 0 10px;
        font-weight: bold;
        font-size: 1.6rem;
        line-height: 1.2; }
      .tasks .task .task-label {
        background: #256614;
        position: absolute;
        left: 0;
        top: 20px;
        font-size: 1.4rem;
        color: #2b2b2b;
        padding: 2px 10px;
        font-weight: bold; }
      .tasks .task .task-ranking {
        background: #2b2b2b;
        position: absolute;
        left: 0;
        top: 20px;
        font-size: 1.6rem;
        color: #fff;
        padding: 5px 10px;
        font-weight: bold; } }

@media (max-width: 1023px) {
  .tasks {
    display: flex;
    flex-wrap: wrap;
    margin: 15px -3px; }
    .tasks .task {
      position: relative;
      border: 3px solid #fbf9f5;
      width: 50%;
      background: #fff;
      padding: 10px;
      border-radius: 5px; }
      .tasks .task a {
        text-decoration: none;
        color: inherit; }
      .tasks .task .task-img {
        margin: 0 0 10px; }
      .tasks .task .task-title {
        margin: 0 0 10px -10px;
        border-left: 5px solid #ccd1d9;
        padding: 0 0 0 10px;
        font-weight: bold;
        font-size: 1.6rem;
        line-height: 1.2; }
      .tasks .task .task-label {
        background: #256614;
        position: absolute;
        left: 0;
        top: 20px;
        font-size: 1.4rem;
        color: #2b2b2b;
        padding: 2px 10px;
        font-weight: bold; }
      .tasks .task .task-ranking {
        background: #2b2b2b;
        position: absolute;
        left: 0;
        top: 20px;
        font-size: 1.6rem;
        color: #fff;
        padding: 5px 10px;
        font-weight: bold; } }

@media (min-width: 1024px) {
  .task-cards {
    margin: 30px 0; }
    .task-text__accordion__content .task-cards {
      display: -ms-grid;
      display: grid;
      gap: 10px; }
    .list-controller + .task-cards {
      margin-top: 5px; }
    .task-cards .task-card {
      background: #fff;
      padding: 15px 30px 30px;
      margin: 0 0 10px;
      border-radius: 5px;
      position: relative; }
      .task-cards .task-card::after {
        content: "";
        clear: both;
        display: block; }
      .task-text__accordion__content .task-cards .task-card {
        padding: 5px 20px;
        margin: 0;
        text-decoration: none; }
      .task-cards .task-card .task-card-header {
        border-bottom: 1px solid #edebe2;
        margin: 0 0 20px;
        padding: 0px 0px 10px;
        min-height: 3rem; }
        .task-cards .task-card .task-card-header::after {
          content: "";
          clear: both;
          display: block; }
        .task-text__accordion__content .task-cards .task-card .task-card-header {
          margin: 0 0 10px;
          padding: 0; }
        .task-cards .task-card .task-card-header .task-card-title {
          color: #141414;
          position: relative;
          font-weight: bold;
          float: left;
          margin: -5px -5px 5px;
          font-size: 1.6rem; }
          .task-text__accordion__content .task-cards .task-card .task-card-header .task-card-title {
            margin: 0 0 3px; }
          .task-cards .task-card .task-card-header .task-card-title::before {
            content: "";
            background: var(--main-color);
            display: block;
            width: 5px;
            top: 0;
            bottom: 0;
            left: -25px;
            position: absolute; }
            .task-text__accordion__content .task-cards .task-card .task-card-header .task-card-title::before {
              left: -20px; }
            .biz .task-cards .task-card .task-card-header .task-card-title::before {
              background: var(--biz-main-color); }
          .task-cards .task-card .task-card-header .task-card-title a {
            color: inherit;
            text-decoration: none; }
        .task-cards .task-card .task-card-header .corner {
          float: right;
          margin: -5px 0 0;
          display: flex;
          align-items: center;
          gap: 15px; }
          .task-cards .task-card .task-card-header .corner a.favorite {
            float: right;
            width: 3rem;
            height: 3rem;
            text-indent: -99999px;
            position: relative;
            text-decoration: none; }
            .task-cards .task-card .task-card-header .corner a.favorite::before {
              font-family: "Material Icons Outlined";
              content: "\e87e";
              display: block;
              font-size: 2.4rem;
              color: #ccd1d9;
              position: absolute;
              left: 50%;
              top: 50%;
              transform: translate(-50%, -50%);
              text-indent: 0; }
            .task-cards .task-card .task-card-header .corner a.favorite.added::before {
              content: "\e87d";
              color: #e67f77; }
          .task-cards .task-card .task-card-header .corner a.edit {
            color: #141414;
            font-size: 1.6rem; }
            .task-cards .task-card .task-card-header .corner a.edit .material-icons-outlined {
              font-size: 1.8rem;
              vertical-align: middle;
              margin: -0.2rem 1rem 0 0; }
          .task-cards .task-card .task-card-header .corner .button-corner {
            position: static;
            float: right; }
      .task-cards .task-card ul.task-card-labels {
        padding: 0;
        margin: 0;
        list-style: none; }
        .task-cards .task-card ul.task-card-labels li {
          float: left;
          margin: 0 5px 0 0;
          border: 1px solid #256614;
          border-radius: 3px;
          line-height: 2.8rem;
          padding: 0 0.5rem;
          color: #256614;
          font-size: 1.4rem; }
          .task-cards .task-card ul.task-card-labels li:last-child {
            margin-right: 0; }
          .biz .task-cards .task-card ul.task-card-labels li {
            color: #B0520B;
            border: 1px solid #B0520B; }
      .task-cards .task-card .task-card-body {
        display: flex;
        font-size: 1.6rem; }
        .task-cards .task-card .task-card-body:first-child {
          margin-top: 10px; }
        .task-cards .task-card .task-card-body p {
          line-height: 1.8;
          margin: 0 0 1em; }
          .task-text__accordion__content .task-cards .task-card .task-card-body p {
            margin: 0 0 3px; }
        .task-cards .task-card .task-card-body .task-card-img {
          width: 120px;
          padding: 0 10px 0 0; }
        .task-cards .task-card .task-card-body .task-card-text {
          flex: 1; }
        .task-cards .task-card .task-card-body .task-card-text-info {
          display: flex;
          flex-wrap: wrap;
          justify-content: space-between; }
          .task-cards .task-card .task-card-body .task-card-text-info .task-card-error dd {
            text-overflow: ellipsis;
            overflow: hidden;
            white-space: nowrap;
            color: #c10000;
            max-width: 34rem; }
        .task-cards .task-card .task-card-body dl {
          display: flex;
          gap: 2rem;
          margin: 1.5rem 2rem 1rem 0;
          white-space: nowrap; }
          .task-cards .task-card .task-card-body dl:first-child {
            margin-top: 0; }
          .task-cards .task-card .task-card-body dl dt {
            font-weight: bold;
            font-size: 1.6rem;
            color: var(--main-color); }
            .biz .task-cards .task-card .task-card-body dl dt {
              color: var(--biz-main-color); }
          .task-cards .task-card .task-card-body dl dd {
            margin: 0; }
          .task-cards .task-card .task-card-body dl.larger dd {
            font-size: 1.6rem;
            white-space: break-spaces; }
        .task-cards .task-card .task-card-body.condense .task-card-img {
          width: 140px;
          padding: 0 80px 0 0; }
        .task-cards .task-card .task-card-body.condense dl {
          margin: 0 2em 0 0; }
      .task-cards .task-card .task-card-actions {
        background: #fbf9f5;
        padding: 2rem;
        width: 240px; }
        .task-cards .task-card .task-card-actions p {
          font-size: 1.6rem;
          margin: 0 0 1.5rem; }
        .task-cards .task-card .task-card-actions .button {
          font-size: 1.6rem;
          font-weight: bold;
          width: 100%;
          max-width: 288px;
          min-width: 0;
          border-radius: 30px;
          padding: 12px 10px;
          border: none;
          color: #fff;
          background: #256614;
          position: relative;
          cursor: pointer;
          text-decoration: none;
          line-height: 1.5;
          font-weight: bold;
          height: 46px;
          display: flex;
          justify-content: center;
          align-items: center; }
          .task-cards .task-card .task-card-actions .button.--center {
            margin-inline: auto; }
          .biz .task-cards .task-card .task-card-actions .button {
            background: var(--biz-main-color); }
          .task-cards .task-card .task-card-actions .button .material-icons-outlined {
            position: absolute;
            right: 15px;
            top: 50%;
            transform: translateY(-50%);
            font-size: 2rem; }
          .task-cards .task-card .task-card-actions .button:not(.loading-button):hover {
            opacity: 0.7; }
          .task-cards .task-card .task-card-actions .button:focus, .task-cards .task-card .task-card-actions .button:active {
            opacity: 1; }
          .task-cards .task-card .task-card-actions .button:disabled, .task-cards .task-card .task-card-actions .button.--disabled {
            opacity: 0.5;
            color: #141414;
            background-color: #c2c2c2;
            cursor: default; }
          .task-cards .task-card .task-card-actions .button .buttonDisabled {
            color: #141414;
            background-color: #666; } }
        @media (min-width: 1024px) and (min-width: 1024px) {
          .task-cards .task-card .task-card-actions .button {
            margin: 0;
            min-width: 288px;
            line-height: 1; }
            .task-cards .task-card .task-card-actions .button:hover {
              opacity: 0.5; } }

@media (min-width: 1024px) {
          .task-cards .task-card .task-card-actions .button a:focus, .task-cards .task-card .task-card-actions .button a:active {
            color: #fff !important; }
        .task-cards .task-card .task-card-actions a.complete {
          line-height: 3.8rem;
          color: inherit;
          font-size: 1.6rem;
          white-space: nowrap; }
          .task-cards .task-card .task-card-actions a.complete .material-icons-outlined {
            margin: 0 0.5rem 0 1rem;
            color: inherit;
            font-size: 1.6rem;
            vertical-align: middle; }
      .task-cards .task-card .task-card-actions-elements {
        display: flex; }
      .task-cards .task-card .form-element-select {
        width: 195px; }
      .task-cards .task-card .button-corner {
        position: absolute;
        right: 25px;
        top: 10px;
        color: #fff;
        background: #141414;
        width: 130px;
        line-height: 30px;
        border-radius: 15px;
        text-align: center;
        font-weight: bold;
        text-decoration: none;
        font-size: 1.4rem; }
        .task-cards .task-card .button-corner .material-icons-outlined {
          font-size: 1.8rem;
          color: inherit;
          margin: -0.2rem 0.7rem 0 0;
          vertical-align: middle; }
    .task-cards .note {
      color: #666666;
      background: #f5f5f4;
      font-size: 1.4rem;
      display: flex;
      padding: 5px 10px;
      gap: 15px;
      margin: 10px 0 0; }
      .task-cards .note .material-icons-outlined {
        font-size: 1.8rem;
        color: inherit;
        margin: -0.2rem 0.7rem 0 0;
        vertical-align: middle; }
      .task-cards .note dt {
        font-weight: bold; }
      .task-cards .note dd {
        margin: 0; }
  .task-card-footer-actions {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 5px;
    border-top: 1px solid #edebe2;
    padding: 30px 0 0; }
    .task-card-body + .task-card-footer-actions {
      margin-top: 30px; }
    .task-card-footer-actions .button-primary {
      font-size: 1.6rem;
      font-weight: bold;
      width: 100%;
      max-width: 288px;
      min-width: 0;
      border-radius: 30px;
      padding: 12px 10px;
      border: none;
      color: #fff;
      background: #256614;
      position: relative;
      cursor: pointer;
      text-decoration: none;
      line-height: 1.5;
      font-weight: bold;
      height: 46px;
      display: flex;
      justify-content: center;
      align-items: center; }
      .task-card-footer-actions .button-primary.--center {
        margin-inline: auto; }
      .biz .task-card-footer-actions .button-primary {
        background: var(--biz-main-color); }
      .task-card-footer-actions .button-primary .material-icons-outlined {
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 2rem; }
      .task-card-footer-actions .button-primary:not(.loading-button):hover {
        opacity: 0.7; }
      .task-card-footer-actions .button-primary:focus, .task-card-footer-actions .button-primary:active {
        background: #1d5110;
        opacity: 1; }
        .biz .task-card-footer-actions .button-primary:focus, .biz .task-card-footer-actions .button-primary:active {
          background: #98470a; }
      .task-card-footer-actions .button-primary:disabled, .task-card-footer-actions .button-primary.--disabled {
        opacity: 0.5;
        color: #141414;
        background-color: #c2c2c2;
        cursor: default; }
      .task-card-footer-actions .button-primary .buttonDisabled {
        color: #141414;
        background-color: #666; } }
    @media (min-width: 1024px) and (min-width: 1024px) {
      .task-card-footer-actions .button-primary {
        margin: 0;
        min-width: 288px;
        line-height: 1; }
        .task-card-footer-actions .button-primary:hover {
          opacity: 0.5; } }

@media (min-width: 1024px) {
      .task-card-footer-actions .button-primary a:focus, .task-card-footer-actions .button-primary a:active {
        color: #fff !important; }
    .task-card-footer-actions .button-secondary {
      font-size: 1.6rem;
      font-weight: bold;
      width: 100%;
      max-width: 288px;
      min-width: 0;
      border-radius: 30px;
      padding: 12px 10px;
      border: 1px solid #256614;
      color: #256614;
      background: #fff;
      position: relative;
      cursor: pointer;
      text-decoration: none;
      line-height: 1.5;
      font-weight: bold;
      height: 46px;
      display: flex;
      justify-content: center;
      align-items: center; }
      .task-card-footer-actions .button-secondary.--center {
        margin-inline: auto; }
      .biz .task-card-footer-actions .button-secondary {
        border: 1px solid var(--biz-main-color);
        color: var(--biz-main-color); }
      .task-card-footer-actions .button-secondary .material-icons-outlined {
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 2rem;
        color: var(--main-color); }
        .biz .task-card-footer-actions .button-secondary .material-icons-outlined {
          color: var(--biz-main-color); }
      .task-card-footer-actions .button-secondary:not(.loading-button):hover {
        opacity: 0.7; }
      .task-card-footer-actions .button-secondary:focus, .task-card-footer-actions .button-secondary:active {
        background: #1d5110;
        opacity: 1; }
        .biz .task-card-footer-actions .button-secondary:focus, .biz .task-card-footer-actions .button-secondary:active {
          background: #98470a; }
      .task-card-footer-actions .button-secondary:disabled, .task-card-footer-actions .button-secondary.--disabled {
        opacity: 0.5;
        color: #141414;
        border: none;
        background-color: #c2c2c2;
        cursor: default; }
        .biz .task-card-footer-actions .button-secondary:disabled, .biz .task-card-footer-actions .button-secondary.--disabled {
          color: #141414; }
        .task-card-footer-actions .button-secondary:disabled .material-icons-outlined, .task-card-footer-actions .button-secondary.--disabled .material-icons-outlined {
          color: #141414; }
          .biz .task-card-footer-actions .button-secondary:disabled .material-icons-outlined, .biz .task-card-footer-actions .button-secondary.--disabled .material-icons-outlined {
            color: #141414; }
      .task-card-footer-actions .button-secondary .buttonDisabled {
        color: #141414;
        background-color: #666; } }
    @media (min-width: 1024px) and (min-width: 1024px) {
      .task-card-footer-actions .button-secondary {
        margin: 0;
        min-width: 288px;
        line-height: 1; }
        .task-card-footer-actions .button-secondary:hover {
          opacity: 0.5; } }

@media (min-width: 1024px) {
      .task-card-footer-actions .button-secondary a:focus, .task-card-footer-actions .button-secondary a:active {
        color: #fff !important; }
    .task-card-footer-actions .button-secondary {
      color: #256614;
      background: #fff; }
    .task-card-footer-actions .button-primary {
      color: #fff;
      background: #256614; }
    .task-card-footer-actions.larger {
      text-align: center;
      display: block; }
      .task-card-footer-actions.larger .button-primary {
        font-size: 1.6rem;
        font-weight: bold;
        width: 100%;
        max-width: 288px;
        min-width: 0;
        border-radius: 30px;
        padding: 12px 10px;
        border: none;
        color: #fff;
        background: #256614;
        position: relative;
        cursor: pointer;
        text-decoration: none;
        line-height: 1.5;
        font-weight: bold;
        height: 46px;
        display: flex;
        justify-content: center;
        align-items: center; }
        .task-card-footer-actions.larger .button-primary.--center {
          margin-inline: auto; }
        .biz .task-card-footer-actions.larger .button-primary {
          background: var(--biz-main-color); }
        .task-card-footer-actions.larger .button-primary .material-icons-outlined {
          position: absolute;
          right: 15px;
          top: 50%;
          transform: translateY(-50%);
          font-size: 2rem; }
        .task-card-footer-actions.larger .button-primary:not(.loading-button):hover {
          opacity: 0.7; }
        .task-card-footer-actions.larger .button-primary:focus, .task-card-footer-actions.larger .button-primary:active {
          background: #1d5110;
          opacity: 1; }
          .biz .task-card-footer-actions.larger .button-primary:focus, .biz .task-card-footer-actions.larger .button-primary:active {
            background: #98470a; }
        .task-card-footer-actions.larger .button-primary:disabled, .task-card-footer-actions.larger .button-primary.--disabled {
          opacity: 0.5;
          color: #141414;
          background-color: #c2c2c2;
          cursor: default; }
        .task-card-footer-actions.larger .button-primary .buttonDisabled {
          color: #141414;
          background-color: #666; } }
      @media (min-width: 1024px) and (min-width: 1024px) {
        .task-card-footer-actions.larger .button-primary {
          margin: 0;
          min-width: 288px;
          line-height: 1; }
          .task-card-footer-actions.larger .button-primary:hover {
            opacity: 0.5; } }

@media (min-width: 1024px) {
        .task-card-footer-actions.larger .button-primary a:focus, .task-card-footer-actions.larger .button-primary a:active {
          color: #fff !important; }
      .task-card-footer-actions.larger .button-secondary {
        font-size: 1.6rem;
        font-weight: bold;
        width: 100%;
        max-width: 288px;
        min-width: 0;
        border-radius: 30px;
        padding: 12px 10px;
        border: 1px solid #256614;
        color: #256614;
        background: #fff;
        position: relative;
        cursor: pointer;
        text-decoration: none;
        line-height: 1.5;
        font-weight: bold;
        height: 46px;
        display: flex;
        justify-content: center;
        align-items: center; }
        .task-card-footer-actions.larger .button-secondary.--center {
          margin-inline: auto; }
        .biz .task-card-footer-actions.larger .button-secondary {
          border: 1px solid var(--biz-main-color);
          color: var(--biz-main-color); }
        .task-card-footer-actions.larger .button-secondary .material-icons-outlined {
          position: absolute;
          right: 15px;
          top: 50%;
          transform: translateY(-50%);
          font-size: 2rem;
          color: var(--main-color); }
          .biz .task-card-footer-actions.larger .button-secondary .material-icons-outlined {
            color: var(--biz-main-color); }
        .task-card-footer-actions.larger .button-secondary:not(.loading-button):hover {
          opacity: 0.7; }
        .task-card-footer-actions.larger .button-secondary:focus, .task-card-footer-actions.larger .button-secondary:active {
          background: #1d5110;
          opacity: 1; }
          .biz .task-card-footer-actions.larger .button-secondary:focus, .biz .task-card-footer-actions.larger .button-secondary:active {
            background: #98470a; }
        .task-card-footer-actions.larger .button-secondary:disabled, .task-card-footer-actions.larger .button-secondary.--disabled {
          opacity: 0.5;
          color: #141414;
          border: none;
          background-color: #c2c2c2;
          cursor: default; }
          .biz .task-card-footer-actions.larger .button-secondary:disabled, .biz .task-card-footer-actions.larger .button-secondary.--disabled {
            color: #141414; }
          .task-card-footer-actions.larger .button-secondary:disabled .material-icons-outlined, .task-card-footer-actions.larger .button-secondary.--disabled .material-icons-outlined {
            color: #141414; }
            .biz .task-card-footer-actions.larger .button-secondary:disabled .material-icons-outlined, .biz .task-card-footer-actions.larger .button-secondary.--disabled .material-icons-outlined {
              color: #141414; }
        .task-card-footer-actions.larger .button-secondary .buttonDisabled {
          color: #141414;
          background-color: #666; } }
      @media (min-width: 1024px) and (min-width: 1024px) {
        .task-card-footer-actions.larger .button-secondary {
          margin: 0;
          min-width: 288px;
          line-height: 1; }
          .task-card-footer-actions.larger .button-secondary:hover {
            opacity: 0.5; } }

@media (min-width: 1024px) {
        .task-card-footer-actions.larger .button-secondary a:focus, .task-card-footer-actions.larger .button-secondary a:active {
          color: #fff !important; }
    .task-card-footer-actions.no-border {
      border-top: none;
      padding-top: 0; } }

@media (max-width: 1023px) {
  .task-cards {
    margin: 0 0 30px; }
    .task-text__accordion__content .task-cards {
      display: -ms-grid;
      display: grid;
      gap: 10px; }
    .task-cards .task-card {
      background: #fff;
      padding: 15px 30px;
      margin: 0 0 10px;
      border-radius: 5px;
      position: relative; }
      .task-text__accordion__content .task-cards .task-card {
        padding: 0 20px;
        margin: 0;
        text-decoration: none; }
      .task-cards .task-card .task-card-header {
        border-bottom: 1px solid #edebe2;
        margin: 0 0 20px;
        padding: 0 0 10px;
        min-height: 3rem; }
        .task-cards .task-card .task-card-header::after {
          content: "";
          clear: both;
          display: block; }
        .task-text__accordion__content .task-cards .task-card .task-card-header {
          padding: 0;
          margin: 0; }
        .task-cards .task-card .task-card-header .task-card-title {
          color: #141414;
          position: relative;
          font-weight: bold;
          float: left;
          margin: 10px -5px;
          font-size: 1.6rem; }
          .task-text__accordion__content .task-cards .task-card .task-card-header .task-card-title {
            margin: 0; }
          .task-cards .task-card .task-card-header .task-card-title::before {
            content: "";
            background: var(--main-color);
            display: block;
            width: 5px;
            top: 0;
            bottom: 3px;
            left: -25px;
            position: absolute; }
            .task-text__accordion__content .task-cards .task-card .task-card-header .task-card-title::before {
              left: -20px; }
            .biz .task-cards .task-card .task-card-header .task-card-title::before {
              background: var(--biz-main-color); }
          .task-cards .task-card .task-card-header .task-card-title a {
            color: inherit;
            text-decoration: none; }
        .task-cards .task-card .task-card-header .corner {
          float: right;
          margin: -5px 0 0; }
          .task-cards .task-card .task-card-header .corner a.favorite {
            float: right;
            width: 3rem;
            height: 3rem;
            text-indent: -99999px;
            position: relative;
            text-decoration: none; }
            .task-cards .task-card .task-card-header .corner a.favorite::before {
              font-family: "Material Icons Outlined";
              content: "\e87e";
              display: block;
              font-size: 2.4rem;
              color: #ccd1d9;
              position: absolute;
              left: 50%;
              top: 50%;
              transform: translate(-50%, -50%);
              text-indent: 0; }
            .task-cards .task-card .task-card-header .corner a.favorite.added::before {
              content: "\e87d";
              color: #e67f77; }
          .task-cards .task-card .task-card-header .corner a.edit {
            float: right;
            color: #141414;
            font-size: 1.6rem; }
            .task-cards .task-card .task-card-header .corner a.edit .material-icons-outlined {
              font-size: 1.8rem;
              vertical-align: middle;
              margin: -0.2rem 1rem 0 0; }
      .task-cards .task-card ul.task-card-labels {
        clear: both;
        padding: 0;
        margin: 0 0 10px;
        list-style: none; }
        .task-cards .task-card ul.task-card-labels::after {
          content: "";
          clear: both;
          display: block; }
        .task-cards .task-card ul.task-card-labels li {
          float: left;
          margin: 0 5px 0 0;
          border: 1px solid #256614;
          border-radius: 3px;
          line-height: 1.8rem;
          padding: 0 0.5rem;
          color: #256614;
          font-size: 1.4rem; }
      .task-cards .task-card .task-card-body {
        font-size: 1.6rem; }
        .task-cards .task-card .task-card-body::after {
          content: "";
          clear: both;
          display: block; }
        .task-text__accordion__content .task-cards .task-card .task-card-body p {
          margin: 0; }
        .task-cards .task-card .task-card-body .task-card-img {
          width: 110px;
          float: right;
          margin: 0 0 10px 10px; }
        .task-cards .task-card .task-card-body .task-card-text-info .task-card-error dd {
          text-overflow: ellipsis;
          overflow: hidden;
          white-space: nowrap;
          color: #c10000;
          max-width: 45rem; }
        .task-cards .task-card .task-card-body dl {
          margin: 0 0 1.8rem; }
          .task-cards .task-card .task-card-body dl dt {
            font-weight: bold;
            font-size: 1.6rem;
            color: var(--main-color); }
            .biz .task-cards .task-card .task-card-body dl dt {
              color: var(--biz-main-color); }
          .task-cards .task-card .task-card-body dl dd {
            margin: 0.5rem 0; }
          .task-cards .task-card .task-card-body dl.larger dd {
            font-size: 1.6rem; }
          .task-cards .task-card .task-card-body dl:empty {
            display: none; }
      .task-cards .task-card .task-card-actions {
        background: #fbf9f5;
        padding: 2rem;
        width: 100%;
        clear: both; }
        .task-cards .task-card .task-card-actions::after {
          content: "";
          clear: both;
          display: block; }
        .task-cards .task-card .task-card-actions p {
          font-size: 1.6rem;
          margin: 0 0 1.5rem; }
        .task-cards .task-card .task-card-actions .button {
          font-size: 1.6rem;
          font-weight: bold;
          width: 100%;
          max-width: 288px;
          min-width: 0;
          border-radius: 30px;
          padding: 12px 10px;
          border: none;
          color: #fff;
          background: #256614;
          position: relative;
          cursor: pointer;
          text-decoration: none;
          line-height: 1.5;
          font-weight: bold;
          height: 46px;
          display: flex;
          justify-content: center;
          align-items: center; }
          .task-cards .task-card .task-card-actions .button.--center {
            margin-inline: auto; }
          .biz .task-cards .task-card .task-card-actions .button {
            background: var(--biz-main-color); }
          .task-cards .task-card .task-card-actions .button .material-icons-outlined {
            position: absolute;
            right: 15px;
            top: 50%;
            transform: translateY(-50%);
            font-size: 2rem; }
          .task-cards .task-card .task-card-actions .button:not(.loading-button):hover {
            opacity: 0.7; }
          .task-cards .task-card .task-card-actions .button:focus, .task-cards .task-card .task-card-actions .button:active {
            opacity: 1; }
          .task-cards .task-card .task-card-actions .button:disabled, .task-cards .task-card .task-card-actions .button.--disabled {
            opacity: 0.5;
            color: #141414;
            background-color: #c2c2c2;
            cursor: default; }
          .task-cards .task-card .task-card-actions .button .buttonDisabled {
            color: #141414;
            background-color: #666; } }
        @media (max-width: 1023px) and (min-width: 1024px) {
          .task-cards .task-card .task-card-actions .button {
            margin: 0;
            min-width: 288px;
            line-height: 1; }
            .task-cards .task-card .task-card-actions .button:hover {
              opacity: 0.5; } }

@media (max-width: 1023px) {
          .task-cards .task-card .task-card-actions .button a:focus, .task-cards .task-card .task-card-actions .button a:active {
            color: #fff !important; }
        .task-cards .task-card .task-card-actions a.complete {
          line-height: 3.8rem;
          color: inherit;
          font-size: 1.6rem;
          white-space: nowrap; }
          .task-cards .task-card .task-card-actions a.complete .material-icons-outlined {
            margin: 0 0.5rem 0 1rem;
            color: inherit;
            font-size: 1.6rem;
            vertical-align: middle; }
      .task-cards .task-card .task-card-actions-elements {
        display: flex; }
      .task-cards .task-card .form-element-select {
        width: 170px;
        float: left; }
      .task-cards .task-card .button-corner {
        position: absolute;
        right: 25px;
        top: 10px;
        color: #fff;
        background: #141414;
        width: 130px;
        line-height: 30px;
        border-radius: 15px;
        text-align: center;
        font-weight: bold;
        text-decoration: none;
        font-size: 1.4rem; }
        .task-cards .task-card .button-corner .material-icons-outlined {
          font-size: 1.8rem;
          color: inherit;
          margin: -0.2rem 0.7rem 0 0;
          vertical-align: middle; }
    .task-cards .note {
      color: #666666;
      background: #f5f5f4;
      font-size: 1.4rem;
      display: flex;
      padding: 5px 10px;
      gap: 15px;
      margin: 10px 0 0; }
      .task-cards .note .material-icons-outlined {
        font-size: 1.8rem;
        color: inherit;
        margin: -0.2rem 0.7rem 0 0;
        vertical-align: middle; }
      .task-cards .note dt {
        font-weight: bold; }
      .task-cards .note dd {
        margin: 0; }
  a.edit {
    color: #141414;
    font-size: 1.6rem; }
    a.edit .material-icons-outlined {
      font-size: 1.8rem;
      vertical-align: middle;
      margin: -0.2rem 1rem 0 0; }
  .task-card-footer-actions {
    display: flex;
    flex-flow: column;
    gap: 20px;
    border-top: 1px solid #edebe2;
    padding: 30px 0 10px;
    margin: 30px 0 0;
    align-items: center; }
    .task-card-body + .task-card-footer-actions {
      margin-top: 25px;
      margin-bottom: 10px; }
    .task-card-footer-actions .button-primary {
      font-size: 1.6rem;
      font-weight: bold;
      width: 100%;
      max-width: 288px;
      min-width: 0;
      border-radius: 30px;
      padding: 12px 10px;
      border: none;
      color: #fff;
      background: #256614;
      position: relative;
      cursor: pointer;
      text-decoration: none;
      line-height: 1.5;
      font-weight: bold;
      height: 46px;
      display: flex;
      justify-content: center;
      align-items: center; }
      .task-card-footer-actions .button-primary.--center {
        margin-inline: auto; }
      .biz .task-card-footer-actions .button-primary {
        background: var(--biz-main-color); }
      .task-card-footer-actions .button-primary .material-icons-outlined {
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 2rem; }
      .task-card-footer-actions .button-primary:not(.loading-button):hover {
        opacity: 0.7; }
      .task-card-footer-actions .button-primary:focus, .task-card-footer-actions .button-primary:active {
        background: #1d5110;
        opacity: 1; }
        .biz .task-card-footer-actions .button-primary:focus, .biz .task-card-footer-actions .button-primary:active {
          background: #98470a; }
      .task-card-footer-actions .button-primary:disabled, .task-card-footer-actions .button-primary.--disabled {
        opacity: 0.5;
        color: #141414;
        background-color: #c2c2c2;
        cursor: default; }
      .task-card-footer-actions .button-primary .buttonDisabled {
        color: #141414;
        background-color: #666; } }
    @media (max-width: 1023px) and (min-width: 1024px) {
      .task-card-footer-actions .button-primary {
        margin: 0;
        min-width: 288px;
        line-height: 1; }
        .task-card-footer-actions .button-primary:hover {
          opacity: 0.5; } }

@media (max-width: 1023px) {
      .task-card-footer-actions .button-primary a:focus, .task-card-footer-actions .button-primary a:active {
        color: #fff !important; }
    .task-card-footer-actions .button-secondary {
      font-size: 1.6rem;
      font-weight: bold;
      width: 100%;
      max-width: 288px;
      min-width: 0;
      border-radius: 30px;
      padding: 12px 10px;
      border: 1px solid #256614;
      color: #256614;
      background: #fff;
      position: relative;
      cursor: pointer;
      text-decoration: none;
      line-height: 1.5;
      font-weight: bold;
      height: 46px;
      display: flex;
      justify-content: center;
      align-items: center; }
      .task-card-footer-actions .button-secondary.--center {
        margin-inline: auto; }
      .biz .task-card-footer-actions .button-secondary {
        border: 1px solid var(--biz-main-color);
        color: var(--biz-main-color); }
      .task-card-footer-actions .button-secondary .material-icons-outlined {
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 2rem;
        color: var(--main-color); }
        .biz .task-card-footer-actions .button-secondary .material-icons-outlined {
          color: var(--biz-main-color); }
      .task-card-footer-actions .button-secondary:not(.loading-button):hover {
        opacity: 0.7; }
      .task-card-footer-actions .button-secondary:focus, .task-card-footer-actions .button-secondary:active {
        background: #1d5110;
        opacity: 1; }
        .biz .task-card-footer-actions .button-secondary:focus, .biz .task-card-footer-actions .button-secondary:active {
          background: #98470a; }
      .task-card-footer-actions .button-secondary:disabled, .task-card-footer-actions .button-secondary.--disabled {
        opacity: 0.5;
        color: #141414;
        border: none;
        background-color: #c2c2c2;
        cursor: default; }
        .biz .task-card-footer-actions .button-secondary:disabled, .biz .task-card-footer-actions .button-secondary.--disabled {
          color: #141414; }
        .task-card-footer-actions .button-secondary:disabled .material-icons-outlined, .task-card-footer-actions .button-secondary.--disabled .material-icons-outlined {
          color: #141414; }
          .biz .task-card-footer-actions .button-secondary:disabled .material-icons-outlined, .biz .task-card-footer-actions .button-secondary.--disabled .material-icons-outlined {
            color: #141414; }
      .task-card-footer-actions .button-secondary .buttonDisabled {
        color: #141414;
        background-color: #666; } }
    @media (max-width: 1023px) and (min-width: 1024px) {
      .task-card-footer-actions .button-secondary {
        margin: 0;
        min-width: 288px;
        line-height: 1; }
        .task-card-footer-actions .button-secondary:hover {
          opacity: 0.5; } }

@media (max-width: 1023px) {
      .task-card-footer-actions .button-secondary a:focus, .task-card-footer-actions .button-secondary a:active {
        color: #fff !important; }
    .task-card-footer-actions .button-secondary {
      color: #256614;
      background: #fff; }
    .task-card-footer-actions .button-primary {
      color: #fff;
      background: #256614; }
    .task-card-footer-actions.larger {
      text-align: center;
      display: block; }
      .task-card-footer-actions.larger .button-primary {
        font-size: 1.6rem;
        font-weight: bold;
        width: 100%;
        max-width: 288px;
        min-width: 0;
        border-radius: 30px;
        padding: 12px 10px;
        border: none;
        color: #fff;
        background: #256614;
        position: relative;
        cursor: pointer;
        text-decoration: none;
        line-height: 1.5;
        font-weight: bold;
        height: 46px;
        display: flex;
        justify-content: center;
        align-items: center; }
        .task-card-footer-actions.larger .button-primary.--center {
          margin-inline: auto; }
        .biz .task-card-footer-actions.larger .button-primary {
          background: var(--biz-main-color); }
        .task-card-footer-actions.larger .button-primary .material-icons-outlined {
          position: absolute;
          right: 15px;
          top: 50%;
          transform: translateY(-50%);
          font-size: 2rem; }
        .task-card-footer-actions.larger .button-primary:not(.loading-button):hover {
          opacity: 0.7; }
        .task-card-footer-actions.larger .button-primary:focus, .task-card-footer-actions.larger .button-primary:active {
          background: #1d5110;
          opacity: 1; }
          .biz .task-card-footer-actions.larger .button-primary:focus, .biz .task-card-footer-actions.larger .button-primary:active {
            background: #98470a; }
        .task-card-footer-actions.larger .button-primary:disabled, .task-card-footer-actions.larger .button-primary.--disabled {
          opacity: 0.5;
          color: #141414;
          background-color: #c2c2c2;
          cursor: default; }
        .task-card-footer-actions.larger .button-primary .buttonDisabled {
          color: #141414;
          background-color: #666; } }
      @media (max-width: 1023px) and (min-width: 1024px) {
        .task-card-footer-actions.larger .button-primary {
          margin: 0;
          min-width: 288px;
          line-height: 1; }
          .task-card-footer-actions.larger .button-primary:hover {
            opacity: 0.5; } }

@media (max-width: 1023px) {
        .task-card-footer-actions.larger .button-primary a:focus, .task-card-footer-actions.larger .button-primary a:active {
          color: #fff !important; }
      .task-card-footer-actions.larger .button-secondary {
        line-height: 6rem;
        border-radius: 3rem;
        font-size: 1.6rem;
        padding: 0;
        display: block;
        width: auto; }
        .task-card-footer-actions.larger .button-secondary .material-icons-outlined {
          right: 20px; }
    .task-card-footer-actions.no-border {
      border-top: none;
      padding-top: 0; } }

.task-list__list {
  display: -ms-grid;
  display: grid;
  gap: 10px; }

.task-list__item {
  background: #fff;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  padding: 10px;
  text-decoration: none;
  font-size: 1.6rem; }
  .task-list__item a {
    text-decoration: none; }
  @media (min-width: 1024px) {
    .task-list__item.--booking, .task-list__item.--application {
      display: -ms-grid;
      display: grid;
      -ms-grid-columns: 1fr auto;
      grid-template-columns: 1fr auto; }
      .task-list__item.--booking .task-list__text, .task-list__item.--application .task-list__text {
        display: -ms-grid;
        display: grid; } }
    @media (min-width: 1024px) and (min-width: 1024px) {
      .task-list__item.--booking .task-list__text, .task-list__item.--application .task-list__text {
        -ms-grid-columns: (200px)[3];
        grid-template-columns: repeat(3, 200px); } }
  @media (min-width: 1024px) {
      .task-list__item.--booking .task-list__footer, .task-list__item.--application .task-list__footer {
        border-top: none;
        padding-left: 10px; } }
  @media (min-width: 1024px) {
    .task-list__item.--booking.--application .task-list__text, .task-list__item.--application.--application .task-list__text {
      -ms-grid-columns: (200px)[3];
      grid-template-columns: repeat(3, 200px);
      margin-right: 20px; } }
  .task-list__item__comment {
    text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    line-clamp: 2;
    -webkit-line-clamp: 2; }
  .task-list__item__body {
    display: -ms-grid;
    display: grid; }
    @media (min-width: 1024px) {
      .task-list__item__body {
        gap: 40px;
        -ms-grid-columns: 115px 1fr;
        grid-template-columns: 115px 1fr; } }
  .task-list__item__title {
    font-weight: 700;
    font-size: 1.6rem; }
    @media (max-width: 1023px) {
      .task-list__item__title {
        border-bottom: 1px solid var(--main-color); }
        .biz .task-list__item__title {
          border-bottom: 1px solid var(--biz-main-color); } }
  .task-list__item__corner {
    display: flex;
    align-items: center; }
    .task-list__item__corner .material-icons-outlined {
      font-size: 18px; }
  .task-list__item__edit {
    background: none;
    border: none;
    display: flex;
    align-items: center; }
    .task-list__item__edit.--favorite {
      color: #e67f77; }
    .task-list__item__edit__favorite {
      display: flex;
      align-items: center;
      justify-content: center;
      height: 25px;
      cursor: pointer; }
      .task-list__item__edit__favorite input {
        display: none; }
      .task-list__item__edit__favorite::before {
        font-family: "Material Icons Outlined";
        font-size: 2rem;
        color: #ccd1d9;
        content: "\e87e"; }
      .task-list__item__edit__favorite:has(input:checked)::before {
        color: #e67f77;
        content: "\e87d"; }
  .task-list__item__overdue {
    background: var(--error-color);
    color: #fff;
    margin: 0 5px 0 0;
    border: 1px solid;
    border-radius: 3px;
    line-height: 2.8rem;
    padding: 0 0.5rem;
    font-size: 1.4rem;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    min-width: 60px;
    display: flex;
    align-items: center;
    justify-content: center; }

.task-list__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto 1fr;
  grid-template-columns: auto 1fr;
  gap: 10px;
  align-items: baseline; }

.task-list__title {
  color: #141414;
  position: relative;
  font-weight: bold;
  font-size: 1.6rem;
  margin: 10px -5px;
  padding-left: 10px;
  font-size: 1.6rem;
  line-height: 1.3; }
  @media (min-width: 1024px) {
    .task-list__title {
      margin: -5px -5px 5px; } }
  .task-text__accordion__content .task-list__title {
    margin: 0 0 3px; }
  .task-list__title::before {
    content: "";
    background: var(--main-color);
    display: block;
    width: 5px;
    top: 0;
    bottom: 0;
    left: -6px;
    position: absolute; }
    .task-text__accordion__content .task-list__title::before {
      left: -20px; }
    .biz .task-list__title::before {
      background: var(--biz-main-color); }

.task-list__body {
  font-size: 1.6rem; }
  .task-list__body::after {
    content: "";
    clear: both;
    display: block; }
  .task-text__accordion__content .task-list__body p {
    margin: 0; }
  .task-list__body .task-card-img {
    width: 110px;
    float: right;
    margin: 0 0 10px 10px; }
  .task-list__body .task-card-text-info .task-card-error dd {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    color: #c10000;
    max-width: 45rem; }
  .task-list__body dl {
    margin: 0;
    line-height: 1.4; }
    .task-list__body dl dt {
      font-weight: bold;
      font-size: 1.6rem;
      color: var(--main-color);
      margin: 0; }
      .biz .task-list__body dl dt {
        color: var(--biz-main-color); }
    .task-list__body dl dd {
      margin: 0; }
    .task-list__body dl.larger dd {
      font-size: 1.6rem; }
    .task-list__body dl:empty {
      display: none; }

.task-list__image img {
  max-width: 50px;
  margin: 0; }

@media (min-width: 1024px) {
  .task-list__content {
    display: flex;
    flex-direction: column; } }

.task-list__main {
  display: flex;
  gap: 20px; }

.task-list__text {
  display: flex;
  flex-direction: column;
  gap: 10px; }
  @media (min-width: 1024px) {
    .task-list__text {
      gap: 30px;
      flex-direction: row; } }
  .task-list__text__item {
    min-width: 100px; }

.task-list__actions {
  display: flex;
  justify-content: center;
  margin: 10px auto;
  gap: 20px;
  flex-direction: column; }
  .task-list__actions .main-button {
    margin: auto; }
  @media (min-width: 1024px) {
    .task-list__actions {
      flex-direction: row; } }

.task-list__edit {
  color: #141414;
  font-size: 1.6rem;
  display: flex;
  align-items: center; }
  .task-list__edit .material-icons-outlined {
    font-size: 1.8rem;
    vertical-align: middle;
    margin: 0; }

.task-list__options {
  display: flex;
  gap: 10px;
  justify-content: flex-end;
  padding-top: 5px; }
  @media (min-width: 1024px) {
    .task-list__options {
      padding-top: 0; } }

.task-list__note {
  color: #666666;
  font-size: 1.4rem;
  padding: 5px 10px;
  gap: 15px;
  margin: 10px 0 0 !important;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto 1fr;
  grid-template-columns: auto 1fr; }
  .task-list__note .material-icons-outlined {
    font-size: 1.8rem;
    margin: -0.2rem 0.7rem 0 0;
    vertical-align: middle;
    color: var(--main-color); }
    .biz .task-list__note .material-icons-outlined {
      color: var(--biz-main-color); }

.task-list__footer {
  display: flex;
  justify-content: center;
  margin-top: 10px;
  padding-top: 10px;
  width: 100%;
  border-top: 1px solid #d8d8d8; }
  @media (min-width: 1024px) {
    .task-list__footer {
      justify-content: flex-end; } }

@media (min-width: 1024px) {
  .category-cards {
    margin: 30px 0; }
    .list-controller + .category-cards {
      margin-top: 5px; }
    .category-cards .category-card {
      background: #fff;
      padding: 10px 25px;
      margin: 0 0 10px;
      border-radius: 5px;
      position: relative; }
      .category-cards .category-card::after {
        content: "";
        clear: both;
        display: block; }
      .category-cards .category-card .category-card-header {
        border-bottom: 1px solid #edebe2;
        margin: 0 0 10px;
        padding: 0 0 10px;
        min-height: 3rem; }
        .category-cards .category-card .category-card-header::after {
          content: "";
          clear: both;
          display: block; }
        .category-cards .category-card .category-card-header .category-card-title {
          color: #141414;
          position: relative;
          font-weight: bold;
          float: left;
          font-size: 1.8rem; }
          .category-cards .category-card .category-card-header .category-card-title a {
            color: inherit;
            text-decoration: none; }
      .category-cards .category-card .category-card-body {
        display: flex;
        font-size: 1.4rem; } }

@media (max-width: 1023px) {
  .category-cards {
    margin: 0 0 30px; }
    .category-cards .category-card {
      background: #fff;
      padding: 15px;
      margin: 0 0 10px;
      border-radius: 5px;
      position: relative; }
      .category-cards .category-card .category-card-header {
        border-bottom: 1px solid #ccd1d9;
        margin: 0 0 10px;
        padding: 0 0 10px;
        min-height: 3rem; }
        .category-cards .category-card .category-card-header::after {
          content: "";
          clear: both;
          display: block; }
        .category-cards .category-card .category-card-header .category-card-title {
          color: #141414;
          position: relative;
          font-weight: bold;
          float: left;
          font-size: 1.6rem; }
          .category-cards .category-card .category-card-header .category-card-title a {
            color: inherit;
            text-decoration: none; }
      .category-cards .category-card ul.category-card-labels {
        clear: both;
        padding: 10px 0 0;
        margin: 0 0 10px;
        list-style: none; }
        .category-cards .category-card ul.category-card-labels::after {
          content: "";
          clear: both;
          display: block; }
        .category-cards .category-card ul.category-card-labels li {
          float: left;
          margin: 0 5px 0 0;
          border: 1px solid #757575;
          border-radius: 3px;
          line-height: 1.8rem;
          padding: 0 0.5rem;
          color: #757575;
          font-size: 1.4rem; }
      .category-cards .category-card .category-card-body {
        font-size: 1.4rem; }
        .category-cards .category-card .category-card-body::after {
          content: "";
          clear: both;
          display: block; } }

.pagination {
  text-align: center;
  margin: 30px 0 10px; }
  .pagination ul {
    list-style: none;
    padding: 0;
    margin: 0; }
    .pagination ul li {
      display: inline-block;
      vertical-align: middle;
      font-size: 1.4rem;
      margin: 0 3px 10px; }
      .pagination ul li a {
        display: block;
        text-align: center;
        min-width: 3.4rem;
        height: 3.4rem;
        line-height: 3.4rem;
        border-radius: 1.7rem;
        padding: 0 10px;
        background: #fff;
        text-decoration: none;
        font-weight: bold;
        color: #141414; }
      .pagination ul li .material-icons-outlined {
        font-size: 2.2rem;
        line-height: 3.4rem;
        display: block;
        margin: 0 -5px; }
      .pagination ul li.current a {
        background: transparent;
        text-decoration: underline; }

@media (min-width: 1024px) {
  .visual-task img {
    width: 200px;
    height: 200px;
    -o-object-fit: cover;
       object-fit: cover; }
  .task-detail .task-text {
    flex: 1;
    padding: 0 25px 0 0;
    font-size: 1.6rem; }
  .task-detail .task-info {
    background: #fff;
    flex: 1;
    padding: 20px; }
    .task-detail .task-info dl {
      margin: 0 0 1rem; }
      .task-detail .task-info dl dt {
        font-weight: bold;
        color: #256614;
        font-size: 1.4rem; }
        .biz .task-detail .task-info dl dt {
          color: #B0520B; }
      .task-detail .task-info dl dd {
        margin: 0rem 0 1rem;
        font-size: 1.4rem; }
    .task-detail .task-info ul.labels {
      padding: 0;
      margin: 20px 0;
      list-style: none;
      white-space: nowrap; }
      .task-detail .task-info ul.labels::after {
        content: "";
        clear: both;
        display: block; }
      .task-detail .task-info ul.labels li {
        float: left;
        margin: 0 5px 5px 0;
        border: 1px solid #256614;
        border-radius: 3px;
        line-height: 2.8rem;
        padding: 0 0.8rem;
        color: #256614;
        font-size: 1.4rem; }
        .biz .task-detail .task-info ul.labels li {
          border: 1px solid #B0520B;
          color: #B0520B; }
  .task-detail .action {
    display: flex;
    gap: 1rem;
    margin: 0 auto;
    justify-content: center; }
    .task-detail .action .material-icons-outlined {
      vertical-align: middle;
      font-size: 1.8rem;
      margin: 0 1rem 0 0; }
    .task-detail .action .button-primary {
      font-size: 1.6rem;
      font-weight: bold;
      width: 100%;
      max-width: 288px;
      min-width: 0;
      border-radius: 30px;
      padding: 12px 10px;
      border: none;
      color: #fff;
      background: #256614;
      position: relative;
      cursor: pointer;
      text-decoration: none;
      line-height: 1.5;
      font-weight: bold;
      height: 46px;
      display: flex;
      justify-content: center;
      align-items: center; }
      .task-detail .action .button-primary.--center {
        margin-inline: auto; }
      .biz .task-detail .action .button-primary {
        background: var(--biz-main-color); }
      .task-detail .action .button-primary .material-icons-outlined {
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 2rem; }
      .task-detail .action .button-primary:not(.loading-button):hover {
        opacity: 0.7; }
      .task-detail .action .button-primary:focus, .task-detail .action .button-primary:active {
        background: #1d5110;
        opacity: 1; }
        .biz .task-detail .action .button-primary:focus, .biz .task-detail .action .button-primary:active {
          background: #98470a; }
      .task-detail .action .button-primary:disabled, .task-detail .action .button-primary.--disabled {
        opacity: 0.5;
        color: #141414;
        background-color: #c2c2c2;
        cursor: default; }
      .task-detail .action .button-primary .buttonDisabled {
        color: #141414;
        background-color: #666; } }
    @media (min-width: 1024px) and (min-width: 1024px) {
      .task-detail .action .button-primary {
        margin: 0;
        min-width: 288px;
        line-height: 1; }
        .task-detail .action .button-primary:hover {
          opacity: 0.5; } }

@media (min-width: 1024px) {
      .task-detail .action .button-primary a:focus, .task-detail .action .button-primary a:active {
        color: #fff !important; }
    .task-detail .action .button {
      font-size: 1.6rem;
      font-weight: bold;
      width: 100%;
      max-width: 288px;
      min-width: 0;
      border-radius: 30px;
      padding: 12px 10px;
      border: 1px solid #256614;
      color: #256614;
      background: #fff;
      position: relative;
      cursor: pointer;
      text-decoration: none;
      line-height: 1.5;
      font-weight: bold;
      height: 46px;
      display: flex;
      justify-content: center;
      align-items: center; }
      .task-detail .action .button.--center {
        margin-inline: auto; }
      .biz .task-detail .action .button {
        border: 1px solid var(--biz-main-color);
        color: var(--biz-main-color); }
      .task-detail .action .button .material-icons-outlined {
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 2rem;
        color: var(--main-color); }
        .biz .task-detail .action .button .material-icons-outlined {
          color: var(--biz-main-color); }
      .task-detail .action .button:not(.loading-button):hover {
        opacity: 0.7; }
      .task-detail .action .button:focus, .task-detail .action .button:active {
        opacity: 1; }
      .task-detail .action .button:disabled, .task-detail .action .button.--disabled {
        opacity: 0.5;
        color: #141414;
        border: none;
        background-color: #c2c2c2;
        cursor: default; }
        .biz .task-detail .action .button:disabled, .biz .task-detail .action .button.--disabled {
          color: #141414; }
        .task-detail .action .button:disabled .material-icons-outlined, .task-detail .action .button.--disabled .material-icons-outlined {
          color: #141414; }
          .biz .task-detail .action .button:disabled .material-icons-outlined, .biz .task-detail .action .button.--disabled .material-icons-outlined {
            color: #141414; }
      .task-detail .action .button .buttonDisabled {
        color: #141414;
        background-color: #666; } }
    @media (min-width: 1024px) and (min-width: 1024px) {
      .task-detail .action .button {
        margin: 0;
        min-width: 288px;
        line-height: 1; }
        .task-detail .action .button:hover {
          opacity: 0.5; } }

@media (min-width: 1024px) {
      .task-detail .action .button a:focus, .task-detail .action .button a:active {
        color: #fff !important; }
    .task-detail .action a.favorite {
      width: 3rem;
      height: 4.8rem;
      text-indent: -99999px;
      position: relative;
      text-decoration: none;
      color: #fff; }
      .task-detail .action a.favorite::before {
        font-family: "Material Icons Outlined";
        content: "\e87e";
        display: block;
        font-size: 2.4rem;
        color: #ccd1d9;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        text-indent: 0; }
      .task-detail .action a.favorite.added::before {
        content: "\e87d";
        color: #e67f77; }
  a.favorite {
    width: 3rem;
    height: 4.8rem;
    text-indent: -99999px;
    position: relative;
    text-decoration: none;
    color: #fff; }
    a.favorite::before {
      font-family: "Material Icons Outlined";
      content: "\e87e";
      display: block;
      font-size: 2.4rem;
      color: #ccd1d9;
      position: absolute;
      left: 20%;
      top: 90%;
      transform: translate(-50%, -50%);
      text-indent: 0; }
    a.favorite.added::before {
      content: "\e87d";
      color: #e67f77; }
  .task-docs {
    margin: 30px 0;
    background: #fff;
    padding: 25px 35px; }
    .task-docs h2 {
      font-size: 1.6rem;
      background: #fbf9f5;
      padding: 5px 10px;
      margin: 2em -10px 1em; }
      .biz .task-docs h2 {
        background: #e0ded9; }
      .task-docs h2:first-child {
        margin-top: 0; }
    .task-docs h3 {
      color: #141414;
      font-size: 1.6rem;
      border-bottom: 1px solid #141414;
      padding: 0 0 5px; }
    .task-docs ul {
      list-style: none;
      padding: 0;
      margin: 1em 0 2em; }
      .task-docs ul li {
        padding: 0 0 0 17px;
        margin: 0 0 5px;
        position: relative; }
        .task-docs ul li::before {
          content: "";
          display: block;
          width: 8px;
          height: 8px;
          border-radius: 50%;
          background: #256614;
          position: absolute;
          left: 0;
          top: 6px; }
          .biz .task-docs ul li::before {
            background: #B0520B; }
        .task-docs ul li .material-icons-outlined {
          font-size: 1em;
          vertical-align: middle; }
  .category-description {
    margin: 0 0 20px;
    display: flex;
    gap: 20px; }
  .category-description-img {
    width: 270px; }
  .category-description-text {
    flex: 1;
    font-size: 1.4rem; }
    .category-description-text p {
      margin: 0 0 10px;
      line-height: 1.8; }
  .detail-header {
    text-align: right;
    margin: 35px 0; }
  .detail-footer {
    display: flex;
    justify-content: flex-end;
    gap: 40px;
    align-items: center; }
    .detail-footer .detail-footer-category {
      color: #141414;
      font-size: 1.4rem;
      background: #fff;
      padding: 7px 5px;
      min-width: 120px;
      text-align: center; } }

@media (max-width: 1023px) {
  .visual-task img {
    width: 200px;
    height: 200px;
    -o-object-fit: cover;
       object-fit: cover; }
  .task-detail .task-text {
    padding: 0 25px 0 0;
    font-size: 1.6rem;
    display: flex;
    flex-flow: column;
    justify-content: center;
    gap: 1rem; }
  .task-detail .task-info {
    background: #fff;
    padding: 15px;
    margin: 0 0 25px; }
    .task-detail .task-info dl {
      margin: 0 0 1rem; }
      .task-detail .task-info dl dt {
        font-weight: bold;
        color: #256614;
        font-size: 1.4rem; }
        .biz .task-detail .task-info dl dt {
          color: #B0520B; }
      .task-detail .task-info dl dd {
        margin: 0rem 0 1rem;
        font-size: 1.4rem; }
    .task-detail .task-info ul.labels {
      padding: 0;
      margin: 20px 0;
      list-style: none; }
      .task-detail .task-info ul.labels::after {
        content: "";
        clear: both;
        display: block; }
      .task-detail .task-info ul.labels li {
        float: left;
        margin: 0 5px 0 0;
        border: 1px solid #256614;
        border-radius: 3px;
        line-height: 1.8rem;
        padding: 0 0.8rem;
        color: #256614;
        font-size: 1.4rem; }
        .biz .task-detail .task-info ul.labels li {
          border: 1px solid #B0520B;
          color: #B0520B; }
  .task-detail .action {
    text-align: center;
    max-width: 300px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-flow: column;
    gap: 1rem; }
    .task-detail .action .material-icons-outlined {
      vertical-align: middle;
      font-size: 1.8rem;
      margin: 0 1rem 0 0; }
    .task-detail .action .button-primary {
      font-size: 1.6rem;
      font-weight: bold;
      width: 100%;
      max-width: 288px;
      min-width: 0;
      border-radius: 30px;
      padding: 12px 10px;
      border: none;
      color: #fff;
      background: #256614;
      position: relative;
      cursor: pointer;
      text-decoration: none;
      line-height: 1.5;
      font-weight: bold;
      height: 46px;
      display: flex;
      justify-content: center;
      align-items: center; }
      .task-detail .action .button-primary.--center {
        margin-inline: auto; }
      .biz .task-detail .action .button-primary {
        background: var(--biz-main-color); }
      .task-detail .action .button-primary .material-icons-outlined {
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 2rem; }
      .task-detail .action .button-primary:not(.loading-button):hover {
        opacity: 0.7; }
      .task-detail .action .button-primary:focus, .task-detail .action .button-primary:active {
        background: #1d5110;
        opacity: 1; }
        .biz .task-detail .action .button-primary:focus, .biz .task-detail .action .button-primary:active {
          background: #98470a; }
      .task-detail .action .button-primary:disabled, .task-detail .action .button-primary.--disabled {
        opacity: 0.5;
        color: #141414;
        background-color: #c2c2c2;
        cursor: default; }
      .task-detail .action .button-primary .buttonDisabled {
        color: #141414;
        background-color: #666; } }
    @media (max-width: 1023px) and (min-width: 1024px) {
      .task-detail .action .button-primary {
        margin: 0;
        min-width: 288px;
        line-height: 1; }
        .task-detail .action .button-primary:hover {
          opacity: 0.5; } }

@media (max-width: 1023px) {
      .task-detail .action .button-primary a:focus, .task-detail .action .button-primary a:active {
        color: #fff !important; }
    .task-detail .action .button {
      font-size: 1.6rem;
      font-weight: bold;
      width: 100%;
      max-width: 288px;
      min-width: 0;
      border-radius: 30px;
      padding: 12px 10px;
      border: 1px solid #256614;
      color: #256614;
      background: #fff;
      position: relative;
      cursor: pointer;
      text-decoration: none;
      line-height: 1.5;
      font-weight: bold;
      height: 46px;
      display: flex;
      justify-content: center;
      align-items: center; }
      .task-detail .action .button.--center {
        margin-inline: auto; }
      .biz .task-detail .action .button {
        border: 1px solid var(--biz-main-color);
        color: var(--biz-main-color); }
      .task-detail .action .button .material-icons-outlined {
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 2rem;
        color: var(--main-color); }
        .biz .task-detail .action .button .material-icons-outlined {
          color: var(--biz-main-color); }
      .task-detail .action .button:not(.loading-button):hover {
        opacity: 0.7; }
      .task-detail .action .button:focus, .task-detail .action .button:active {
        opacity: 1; }
      .task-detail .action .button:disabled, .task-detail .action .button.--disabled {
        opacity: 0.5;
        color: #141414;
        border: none;
        background-color: #c2c2c2;
        cursor: default; }
        .biz .task-detail .action .button:disabled, .biz .task-detail .action .button.--disabled {
          color: #141414; }
        .task-detail .action .button:disabled .material-icons-outlined, .task-detail .action .button.--disabled .material-icons-outlined {
          color: #141414; }
          .biz .task-detail .action .button:disabled .material-icons-outlined, .biz .task-detail .action .button.--disabled .material-icons-outlined {
            color: #141414; }
      .task-detail .action .button .buttonDisabled {
        color: #141414;
        background-color: #666; } }
    @media (max-width: 1023px) and (min-width: 1024px) {
      .task-detail .action .button {
        margin: 0;
        min-width: 288px;
        line-height: 1; }
        .task-detail .action .button:hover {
          opacity: 0.5; } }

@media (max-width: 1023px) {
      .task-detail .action .button a:focus, .task-detail .action .button a:active {
        color: #fff !important; }
  a.favorite {
    display: inline-block;
    width: 3rem;
    height: 4.8rem;
    text-indent: -99999px;
    position: relative;
    text-decoration: none;
    vertical-align: middle; }
    a.favorite::before {
      font-family: "Material Icons Outlined";
      content: "\e87e";
      display: block;
      font-size: 2.4rem;
      color: #ccd1d9;
      position: absolute;
      left: 50%;
      top: 27%;
      transform: translate(-50%, -50%);
      text-indent: 0; }
    a.favorite.added::before {
      content: "\e87d";
      color: #e67f77; }
  .task-docs {
    margin: 30px 0;
    background: #fff;
    padding: 15px 20px; }
    .task-docs h2 {
      font-size: 1.6rem;
      background: #fbf9f5;
      padding: 5px 10px;
      margin: 2em -10px 1em; }
      .task-docs h2:first-child {
        margin-top: 0; }
    .task-docs h3 {
      color: #141414;
      font-size: 1.6rem;
      border-bottom: 1px solid #141414;
      padding: 0 0 5px; }
    .task-docs ul {
      list-style: none;
      padding: 0;
      margin: 1em 0 2em; }
      .task-docs ul li {
        padding: 0 0 0 17px;
        margin: 0 0 5px;
        position: relative; }
        .task-docs ul li::before {
          content: "";
          display: block;
          width: 8px;
          height: 8px;
          border-radius: 50%;
          background: #256614;
          position: absolute;
          left: 0;
          top: 6px; }
          .biz .task-docs ul li::before {
            background: #B0520B; }
        .task-docs ul li .material-icons-outlined {
          font-size: 1em;
          vertical-align: middle; }
  .category-description-img {
    text-align: center;
    margin: 0 0 10px; }
  .category-description-text {
    font-size: 1.4rem; }
    .category-description-text p {
      margin: 0 0 10px;
      line-height: 1.8; }
  .detail-header {
    text-align: right;
    margin: 25px 0 40px; }
  .detail-footer {
    text-align: right;
    margin: 35px 0; }
    .detail-footer .detail-footer-category {
      color: #141414;
      font-size: 1.4rem;
      background: #fff;
      padding: 7px 5px;
      min-width: 120px;
      margin: 20px 0 0;
      text-align: center;
      display: inline-block; } }

.task-text__accordion__button {
  position: relative;
  background: var(--color-bg2);
  border-radius: 5px;
  padding: 5px 10px; }
  .biz .task-text__accordion__button {
    background: var(--biz-color-bg2); }
  .task-text__accordion__button::after {
    font-family: "Material Icons Outlined";
    content: "\e313";
    font-size: 20px;
    position: absolute;
    top: 6px;
    right: 10px;
    color: #141414; }
    .--accordion-open .task-text__accordion__button::after {
      rotate: 180deg; }

.task-text__accordion__content {
  display: none; }
  .--accordion-open .task-text__accordion__content {
    display: block; }

.task-text__accordion__image {
  display: flex;
  justify-content: center;
  margin-inline: auto; }

.biz .action .button-primary {
  background: var(--biz-main-color); }

.biz .task-info dl dt {
  color: var(--biz-main-color); }

.biz .task-info ul.labels li {
  color: var(--biz-main-color); }

.biz .action .button {
  color: var(--biz-main-color);
  border: 1px solid var(--biz-main-color); }

@media (min-width: 1024px) {
  .fc-calendar-wrap {
    max-width: 850px;
    margin: 0 auto; }
  div.fc .fc-toolbar.fc-header-toolbar {
    background-color: #edebe2;
    padding: 12px;
    margin: 0; }
    div.fc .fc-toolbar.fc-header-toolbar h2 {
      font-size: 1.6rem;
      font-weight: bold; }
    div.fc .fc-toolbar.fc-header-toolbar .fc-button-group {
      border-radius: 5px; }
      div.fc .fc-toolbar.fc-header-toolbar .fc-button-group button {
        color: #141414;
        background-color: #fff;
        border: none;
        font-weight: bold;
        z-index: 0;
        font-size: 1.6rem;
        padding: 10px 15px;
        display: flex;
        align-items: center;
        justify-content: center; }
        div.fc .fc-toolbar.fc-header-toolbar .fc-button-group button:hover {
          opacity: 0.7; }
        div.fc .fc-toolbar.fc-header-toolbar .fc-button-group button + button {
          border-left: 1px solid #edebe2;
          margin-left: 0; }
      div.fc .fc-toolbar.fc-header-toolbar .fc-button-group .fc-button-active {
        color: #fff;
        background: #757575; }
    div.fc .fc-toolbar.fc-header-toolbar .fc-icon.fc-icon-chevron-left,
    div.fc .fc-toolbar.fc-header-toolbar .fc-icon.fc-icon-chevron-right {
      color: #141414;
      vertical-align: bottom; }
  div.fc .fc-button-primary {
    color: #fff;
    background: #757575;
    font-weight: bold;
    border: none;
    font-size: 1.6rem;
    padding: 10px 15px; }
    div.fc .fc-button-primary:hover {
      opacity: 0.7;
      background: #757575; }
    div.fc .fc-button-primary:disabled {
      color: #fff;
      background: #757575;
      opacity: 1;
      cursor: default; }
  div.fc .fc-scrollgrid-section.fc-scrollgrid-section-header {
    background-color: #edebe2; }
  .fc-theme-standard th {
    background: #fbf9f5;
    font-size: 1.6rem; }
  .color-description {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 10px 0; }
    .color-description .color-description-legend {
      font-size: 1.4rem;
      color: #666666;
      position: relative;
      padding-left: 70px;
      margin: 0;
      line-height: 21px; }
      .color-description .color-description-legend::before {
        content: "";
        position: absolute;
        top: 3px;
        left: 0;
        width: 60px;
        height: 16px;
        background-color: #256614;
        border-radius: 3px; }
  .page-back-link {
    padding: 20px 0;
    text-align: center; }
    .page-back-link a {
      text-decoration: underline;
      font-size: 1.4rem; }
      .page-back-link a .material-icons-outlined {
        vertical-align: middle;
        font-size: 1.7rem;
        margin: 0 1rem 0 0; }
  .calendar-compact {
    border-radius: 5px;
    background: #fff;
    overflow: hidden;
    width: 328px; }
  .calendar-compact-nav {
    color: inherit;
    background: #edebe2;
    display: flex;
    justify-content: space-around;
    align-items: center;
    padding: 15px; }
    .calendar-compact-nav a {
      color: inherit; }
    .calendar-compact-nav .material-icons-outlined {
      vertical-align: middle; }
    .calendar-compact-nav .calendar-compact-current {
      font-weight: bold;
      font-size: 1.6rem; }
  .calendar-compact-table-wrap {
    padding: 20px 0;
    text-align: center; }
    .calendar-compact-table-wrap table {
      width: 85%;
      margin: 0 auto;
      font-size: 1.4rem;
      table-layout: fixed; }
      .calendar-compact-table-wrap table th {
        text-align: center;
        padding: 5px 0;
        font-size: 1.6rem; }
      .calendar-compact-table-wrap table td {
        text-align: center;
        padding: 5px 0; }
        .calendar-compact-table-wrap table td a,
        .calendar-compact-table-wrap table td span {
          display: inline-block;
          white-space: nowrap;
          text-align: center;
          width: 3rem;
          height: 3rem;
          line-height: 3rem;
          border-radius: 50%;
          font-size: 1.6rem; }
          .calendar-compact-table-wrap table td a.current,
          .calendar-compact-table-wrap table td span.current {
            color: #256614;
            font-weight: bold; }
        .calendar-compact-table-wrap table td a {
          background: #edebe2;
          color: inherit;
          text-decoration: none;
          font-weight: bold; }
          .calendar-compact-table-wrap table td a.selected {
            color: #fff;
            background: #256614; } }

@media (max-width: 1023px) {
  div.fc .fc-toolbar-chunk:last-child {
    width: 100%;
    text-align: center;
    margin-top: 10px; }
  div.fc .fc-toolbar.fc-header-toolbar {
    background-color: #edebe2;
    padding: 12px;
    margin: 0;
    flex-wrap: wrap;
    font-size: 1.4rem; }
    div.fc .fc-toolbar.fc-header-toolbar h2 {
      font-size: 1.6rem;
      font-weight: bold; }
    div.fc .fc-toolbar.fc-header-toolbar .fc-button-group {
      border-radius: 5px; }
      div.fc .fc-toolbar.fc-header-toolbar .fc-button-group button {
        color: #141414;
        background-color: #fff;
        border: none;
        font-weight: bold;
        z-index: 0;
        padding: 7px 10px;
        display: flex;
        align-items: center;
        justify-content: center; }
        div.fc .fc-toolbar.fc-header-toolbar .fc-button-group button:hover {
          opacity: 0.7; }
        div.fc .fc-toolbar.fc-header-toolbar .fc-button-group button + button {
          border-left: 1px solid #edebe2; }
          .biz div.fc .fc-toolbar.fc-header-toolbar .fc-button-group button + button {
            border-left: 1px solid #B0520B; }
      div.fc .fc-toolbar.fc-header-toolbar .fc-button-group .fc-button-active {
        color: #fff;
        background: #757575; }
    div.fc .fc-toolbar.fc-header-toolbar .fc-icon.fc-icon-chevron-left,
    div.fc .fc-toolbar.fc-header-toolbar .fc-icon.fc-icon-chevron-right {
      color: #141414;
      vertical-align: bottom; }
  div.fc .fc-col-header-cell-cushion {
    font-size: 1.4rem; }
  div.fc .fc-button-primary {
    color: #fff;
    background: #757575;
    font-weight: bold;
    border: none;
    padding: 7px 10px; }
    div.fc .fc-button-primary:hover {
      opacity: 0.7;
      background: #757575; }
    div.fc .fc-button-primary:disabled {
      color: #fff;
      background: #757575;
      opacity: 1;
      cursor: default; }
  div.fc .fc-scrollgrid-section.fc-scrollgrid-section-header {
    background-color: #edebe2; }
  .fc-theme-standard th {
    background: #fbf9f5;
    font-size: 1.6rem; }
  .color-description {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 10px 0; }
    .color-description .color-description-legend {
      font-size: 1.4rem;
      color: #666666;
      position: relative;
      padding-left: 70px;
      margin: 0;
      line-height: 21px; }
      .color-description .color-description-legend::before {
        content: "";
        position: absolute;
        top: 3px;
        left: 0;
        width: 60px;
        height: 16px;
        background-color: #256614;
        border-radius: 3px; }
  .page-back-link {
    padding: 10px 0;
    text-align: center; }
    .page-back-link a {
      text-decoration: underline;
      font-size: 1.4rem; }
      .page-back-link a .material-icons-outlined {
        vertical-align: middle;
        font-size: 1.7rem;
        margin: 0 1rem 0 0; }
  .calendar-compact {
    border-radius: 5px;
    background: #fff;
    overflow: hidden;
    width: 100%; }
  .calendar-compact-nav {
    color: inherit;
    background: #edebe2;
    display: flex;
    justify-content: space-around;
    align-items: center;
    padding: 15px; }
    .calendar-compact-nav a {
      color: inherit; }
    .calendar-compact-nav .material-icons-outlined {
      vertical-align: middle; }
    .calendar-compact-nav .calendar-compact-current {
      font-weight: bold;
      font-size: 1.6rem; }
  .calendar-compact-table-wrap {
    padding: 20px 0;
    text-align: center; }
    .calendar-compact-table-wrap table {
      width: 85%;
      margin: 0 auto;
      font-size: 1.4rem;
      table-layout: fixed; }
      .calendar-compact-table-wrap table th {
        text-align: center;
        padding: 5px 0;
        font-size: 1.6rem; }
      .calendar-compact-table-wrap table td {
        text-align: center;
        padding: 5px 0; }
        .calendar-compact-table-wrap table td a,
        .calendar-compact-table-wrap table td span {
          display: inline-block;
          white-space: nowrap;
          text-align: center;
          width: 3rem;
          height: 3rem;
          line-height: 3rem;
          border-radius: 50%;
          font-size: 1.6rem; }
          .calendar-compact-table-wrap table td a.current,
          .calendar-compact-table-wrap table td span.current {
            color: #256614;
            font-weight: bold; }
        .calendar-compact-table-wrap table td a {
          background: #edebe2;
          color: inherit;
          text-decoration: none;
          font-weight: bold; }
          .calendar-compact-table-wrap table td a.selected {
            color: #fff;
            background: #256614; } }

@media (min-width: 1024px) {
  ol.indicator {
    list-style: none;
    padding: 0;
    margin: 20px 0;
    display: flex;
    overflow: hidden; }
    ol.indicator li {
      flex: 1;
      overflow: hidden;
      padding: 0 10px 0 0;
      white-space: nowrap;
      text-overflow: ellipsis; }
      ol.indicator li div {
        font-size: 1.6rem;
        color: #141414;
        text-align: center;
        background: #fff;
        padding: 0.6rem 1rem 0.6rem 1rem;
        font-weight: bold;
        position: relative; }
        ol.indicator li div::before {
          content: "";
          display: block;
          border-left: 10px solid #fff;
          border-top: 22px solid transparent;
          border-bottom: 22px solid transparent;
          position: absolute;
          top: 50%;
          right: -10px;
          transform: translateY(-50%);
          z-index: 3; }
        ol.indicator li div::after {
          content: "";
          display: block;
          border-left: 10px solid #fbf9f5;
          border-top: 22px solid transparent;
          border-bottom: 22px solid transparent;
          position: absolute;
          top: 50%;
          left: 0;
          transform: translateY(-50%);
          z-index: 3; }
          .biz ol.indicator li div::after {
            border-left: 10px solid var(--biz-bg-color); }
      ol.indicator li.current div {
        color: #fff;
        background: #666; }
        ol.indicator li.current div::before {
          border-left-color: #666; }
      ol.indicator li.done div {
        background: #edebe2;
        color: #666666; }
        ol.indicator li.done div::before {
          border-left-color: #edebe2; }
      ol.indicator li .material-icons-outlined {
        vertical-align: middle;
        font-size: 2rem;
        display: inline-block;
        width: 2rem;
        margin: -0.2rem 0.5em 0 0; } }

@media (max-width: 1023px) {
  ol.indicator {
    list-style: none;
    padding: 0;
    margin: 20px 0;
    display: flex;
    justify-content: space-between;
    background: url("/assets/img/common/line-dot.svg") repeat-x 50% 50%;
    background-size: auto 4px; }
    ol.indicator + ol.indicator {
      margin-top: -10px; }
    ol.indicator li {
      width: 2rem;
      height: 2rem;
      position: relative; }
      ol.indicator li div {
        text-indent: -9999px; }
      ol.indicator li::after {
        font-family: "Material Icons Outlined";
        content: "\e40c";
        position: absolute;
        left: 0;
        top: 0;
        width: 2rem;
        height: 2rem;
        font-size: 2rem;
        display: block;
        line-height: 1;
        background: #fbf9f5;
        color: #bbb; }
        .biz ol.indicator li::after {
          background: var(--biz-bg-color); }
      ol.indicator li.current::after {
        font-family: "Material Icons";
        content: "\e3fa";
        color: #666; }
      ol.indicator li.done::after {
        font-family: "Material Icons";
        content: "\e86c"; } }

@media (min-width: 1024px) {
  .map-wrapper .map iframe {
    width: 100%;
    height: 500px; }
  .map-wrapper p.more {
    text-align: right;
    margin: 15px 0;
    font-size: 1.4rem; }
    .map-wrapper p.more .material-icons-outlined {
      vertical-align: middle;
      font-size: 1.8rem;
      margin: -0.2rem 0 0 1rem; }
  .map-wrapper .map-info {
    background: #fff;
    padding: 5px 28px;
    border-radius: 5px;
    margin: 0 0 50px; }
    .map-wrapper .map-info dl {
      border-bottom: 1px solid #fbf9f5;
      display: flex;
      margin: 0; }
      .map-wrapper .map-info dl:last-child {
        border-bottom: none; }
      .map-wrapper .map-info dl dt {
        font-size: 1.6rem;
        color: #256614;
        width: 80px;
        padding: 20px 0;
        font-weight: bold; }
        .biz .map-wrapper .map-info dl dt {
          color: #B0520B; }
      .map-wrapper .map-info dl dd {
        padding: 20px 0;
        margin: 0;
        flex: 1; } }

@media (max-width: 1023px) {
  .map-wrapper .map iframe {
    width: 100%;
    height: 250px; }
  .map-wrapper p.more {
    text-align: right;
    margin: 15px 0;
    font-size: 1.4rem; }
    .map-wrapper p.more .material-icons-outlined {
      vertical-align: middle;
      font-size: 1.8rem;
      margin: -0.2rem 0 0 1rem; }
  .map-wrapper .map-info {
    background: #fff;
    padding: 5px 15px;
    border-radius: 5px;
    margin: 25px 0 50px; }
    .map-wrapper .map-info dl {
      border-bottom: 1px solid #fbf9f5;
      margin: 0;
      padding: 10px 0; }
      .map-wrapper .map-info dl:last-child {
        border-bottom: none; }
      .map-wrapper .map-info dl dt {
        font-size: 1.6rem;
        color: #256614;
        padding: 5px 10px;
        font-weight: bold; }
        .biz .map-wrapper .map-info dl dt {
          color: #B0520B; }
      .map-wrapper .map-info dl dd {
        padding: 5px 20px;
        margin: 0;
        flex: 1; } }

.list-controller {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 3px 0; }
  .list-controller.tab-sort__container {
    margin: 10px 0 0; }

.pagination-label {
  font-size: 1.4rem;
  margin: 0 0 0 auto; }
  .pagination-label p {
    text-align: right;
    margin: 10px 0;
    line-height: 1; }

dl.nav-sort {
  flex: 1;
  margin: 10px 10px 10px 0;
  font-size: 1.4rem;
  line-height: 1; }
  dl.nav-sort > dt {
    float: left;
    color: #2b2b2b;
    border-right: 1px solid #dcdcdc;
    padding: 0 10px 0 0;
    margin: 0 10px 0 0; }
  dl.nav-sort > dd {
    margin: 0; }
    dl.nav-sort > dd ul {
      list-style: none;
      margin: 0;
      padding: 0; }
      dl.nav-sort > dd ul li {
        float: left;
        margin-bottom: 0.5em; }
        dl.nav-sort > dd ul li::before {
          content: "/";
          float: left;
          color: #d8d8d8;
          margin: 0 6px; }
        dl.nav-sort > dd ul li:first-child::before {
          display: none; }
        dl.nav-sort > dd ul li a {
          color: #666666;
          text-decoration: none; }
        dl.nav-sort > dd ul li.sort-desc a, dl.nav-sort > dd ul li.sort-asc a {
          color: var(--main-color);
          font-weight: bold;
          padding: 0 15px 0 0;
          position: relative; }
          .biz dl.nav-sort > dd ul li.sort-desc a, .biz dl.nav-sort > dd ul li.sort-asc a {
            color: var(--biz-main-color); }
          dl.nav-sort > dd ul li.sort-desc a::before, dl.nav-sort > dd ul li.sort-asc a::before {
            content: "";
            display: block;
            border-top: 4px solid var(--main-color);
            border-left: 4px solid transparent;
            border-right: 4px solid transparent;
            position: absolute;
            top: 50%;
            right: 3px;
            transform: translateY(-50%); }
          dl.nav-sort > dd ul li.sort-asc a::before {
            border-top: unset;
            border-bottom: 4px solid var(--main-color);}
            .biz dl.nav-sort > dd ul li.sort-desc a::before, .biz dl.nav-sort > dd ul li.sort-asc a::before {
              border-top-color: var(--biz-main-color); }

ul.filter {
  display: flex;
  list-style: none;
  padding: 5px;
  margin: 0;
  background: #fff; }
  ul.filter li a {
    display: block;
    text-decoration: none;
    padding: 2px 10px;
    font-size: 1.4rem; }
  ul.filter li.current a {
    color: #fff;
    background-color: #256614; }

.tab-sort__container {
  align-items: baseline;
  display: -ms-grid;
  display: grid;
  gap: 5px;
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr);
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
  text-align: center; }

.tab-sort__tab {
  display: inline-block;
  border-radius: 5px 5px 0 0;
  padding: 3px 10px;
  background: var(--color-bg2);
  cursor: pointer;
  transition: background 0.3s, color 0.3s;
  font-size: 1.4rem;
  font-weight: 700;
  position: relative;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content; }
  .biz .tab-sort__tab {
    background: var(--biz-color-bg2); }
  .tab-sort__tab input {
    display: none; }
  .tab-sort__tab:has(input:checked) {
    background: var(--main-color);
    color: #fff;
    padding-top: 5px; }
    .biz .tab-sort__tab:has(input:checked) {
      background: var(--biz-main-color); }

@media (min-width: 1024px) {
  .reserved-wrap {
    position: relative;
    padding: 0 0 0 348px;
    min-height: 300px; }
    .reserved-wrap .reserved-calendar-wrap {
      position: absolute;
      left: 0;
      top: 0; }
    .reserved-wrap .reserves .reserve {
      background: #fff;
      border-radius: 5px;
      margin: 0 0 10px; } }

@media (max-width: 1023px) {
  .reserved-wrap .reserved-calendar-wrap {
    margin: 0 0 20px; }
  .reserved-wrap .reserves .reserve {
    background: #fff;
    border-radius: 5px;
    margin: 0 0 10px; } }

@media (min-width: 1024px) {
  .tasks-column3 {
    display: flex;
    flex-wrap: wrap;
    margin: 20px -20px; }
    .tasks-column3 .task {
      width: 33.33%;
      padding: 0 20px; }
      .tasks-column3 .task .task-inner {
        background: #fff;
        padding: 10px;
        border-radius: 5px;
        min-height: 100%; }
        .tasks-column3 .task .task-inner a {
          color: inherit;
          text-decoration: none; }
        .tasks-column3 .task .task-inner .task-image {
          position: relative; }
          .tasks-column3 .task .task-inner .task-image .task-label {
            position: absolute;
            right: 0;
            bottom: 0;
            font-size: 1.4rem;
            color: #fff;
            background: #256614;
            padding: 5px 10px 5px 5px;
            font-weight: bold; }
            .biz .tasks-column3 .task .task-inner .task-image .task-label {
              background: #B0520B; }
            .tasks-column3 .task .task-inner .task-image .task-label .material-icons-outlined {
              font-size: 1.7rem;
              vertical-align: middle;
              margin: 0 0.7rem 0 0; }
        .tasks-column3 .task .task-inner img {
          display: block;
          margin: 0 0 10px; }
        .tasks-column3 .task .task-inner dl {
          margin: 0;
          padding: 0 10px 0 15px; }
          .tasks-column3 .task .task-inner dl > dt {
            font-size: 1.6rem;
            font-weight: bold;
            position: relative; }
            .tasks-column3 .task .task-inner dl > dt::after {
              width: 5px;
              left: -25px;
              content: "";
              top: 0;
              bottom: 0;
              background: #256614;
              position: absolute;
              display: block; }
          .tasks-column3 .task .task-inner dl > dd {
            font-size: 1.4rem;
            margin: 1rem 0; } }

@media (max-width: 1023px) {
  .tasks-column3 {
    display: flex;
    flex-wrap: wrap;
    margin: 5px -5px 20px; }
    .tasks-column3 .task {
      padding: 0 5px;
      width: 50%;
      margin: 0 0 10px; }
      .tasks-column3 .task .task-inner {
        background: #fff;
        padding: 10px;
        border-radius: 5px;
        min-height: 100%; }
        .tasks-column3 .task .task-inner a {
          color: inherit;
          text-decoration: none; }
        .tasks-column3 .task .task-inner .task-image {
          position: relative; }
          .tasks-column3 .task .task-inner .task-image .task-label {
            position: absolute;
            right: 0;
            bottom: 0;
            font-size: 1.4rem;
            color: #fff;
            background: #256614;
            padding: 3px 7px 3px 5px;
            font-weight: bold; }
            .biz .tasks-column3 .task .task-inner .task-image .task-label {
              background: #B0520B; }
            .tasks-column3 .task .task-inner .task-image .task-label .material-icons-outlined {
              font-size: 1.7rem;
              vertical-align: middle;
              margin: 0 0.7rem 0 0; }
        .tasks-column3 .task .task-inner img {
          display: block;
          margin: 0 0 10px; }
        .tasks-column3 .task .task-inner dl {
          margin: 0;
          padding: 0 5px; }
          .tasks-column3 .task .task-inner dl > dt {
            font-size: 1.6rem;
            font-weight: bold;
            position: relative; }
            .tasks-column3 .task .task-inner dl > dt::after {
              width: 5px;
              left: -15px;
              content: "";
              top: 2px;
              bottom: 4px;
              background: #256614;
              position: absolute;
              display: block; }
          .tasks-column3 .task .task-inner dl > dd {
            font-size: 1.4rem;
            margin: 0.7rem 0; } }

.task-image-info {
  display: flex;
  gap: 15px;
  flex-wrap: wrap; }
  @media (min-width: 1024px) {
    .task-image-info {
      display: -ms-grid;
      display: grid;
      -ms-grid-rows: auto 1fr;
      grid-template-rows: auto 1fr; } }

.task-info__top {
  display: flex;
  border-bottom: 1px solid var(--color-bg2);
  margin-bottom: 20px;
  gap: 20px; }
  @media (min-width: 1024px) {
    .task-info__top p {
      margin-top: 0; } }
  @media (max-width: 1023px) {
    .task-info__top {
      flex-wrap: wrap; } }

.biz .task-info .task-detail .task-info dl dt {
  color: var(--biz-main-color); }

.header-shortcuts {
  background-color: #edebe2;
  padding: 15px; }
  .biz .header-shortcuts {
    background: #d8d4cd; }
  .header-shortcuts ul.header-shortcuts-link {
    list-style: none;
    padding: 0;
    margin: 0 0 0 -1px;
    display: flex;
    border-radius: 5px;
    overflow: hidden; }
    .header-shortcuts ul.header-shortcuts-link > li {
      flex: 1;
      font-size: 1.4rem;
      font-weight: bold;
      padding-left: 1px; }
      .header-shortcuts ul.header-shortcuts-link > li a {
        color: inherit;
        background: #fff;
        display: block;
        text-decoration: none;
        text-align: center;
        padding: 5px 5px 0 0;
        margin: 0 -1px;
        height: 100%;
        max-height: -webkit-fit-content;
        max-height: -moz-fit-content;
        max-height: fit-content; }
      .header-shortcuts ul.header-shortcuts-link > li .material-icons-outlined {
        display: block;
        font-size: 2.4rem;
        margin: 3px auto 5px;
        color: #256614; }
        .biz .header-shortcuts ul.header-shortcuts-link > li .material-icons-outlined {
          color: #B0520B; }
      .header-shortcuts ul.header-shortcuts-link > li.task-search a {
        background: #141414;
        color: #fff; }
        .header-shortcuts ul.header-shortcuts-link > li.task-search a .material-icons-outlined {
          color: inherit; }

.account-box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
  background: #fff;
  border-radius: 0 0 5px 5px;
  margin: -1px 0;
  padding: 10px 20px; }
  .account-box__menu {
    display: flex;
    gap: 10px;
    justify-content: space-between;
    align-items: center; }
  .account-box__button {
    font-size: 1.6rem;
    font-weight: bold;
    width: 100%;
    max-width: 288px;
    min-width: 0;
    border-radius: 30px;
    padding: 12px 10px;
    border: 1px solid #256614;
    color: #256614;
    background: #fff;
    position: relative;
    cursor: pointer;
    text-decoration: none;
    line-height: 1.5;
    font-weight: bold;
    height: 46px;
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 0;
    width: 150px; }
    .account-box__button.--center {
      margin-inline: auto; }
    .biz .account-box__button {
      border: 1px solid var(--biz-main-color);
      color: var(--biz-main-color); }
    .account-box__button .material-icons-outlined {
      position: absolute;
      right: 15px;
      top: 50%;
      transform: translateY(-50%);
      font-size: 2rem;
      color: var(--main-color); }
      .biz .account-box__button .material-icons-outlined {
        color: var(--biz-main-color); }
    .account-box__button:not(.loading-button):hover {
      opacity: 0.7; }
    .account-box__button:focus, .account-box__button:active {
      opacity: 1; }
    .account-box__button:disabled, .account-box__button.--disabled {
      opacity: 0.5;
      color: #141414;
      border: none;
      background-color: #c2c2c2;
      cursor: default; }
      .biz .account-box__button:disabled, .biz .account-box__button.--disabled {
        color: #141414; }
      .account-box__button:disabled .material-icons-outlined, .account-box__button.--disabled .material-icons-outlined {
        color: #141414; }
        .biz .account-box__button:disabled .material-icons-outlined, .biz .account-box__button.--disabled .material-icons-outlined {
          color: #141414; }
    .account-box__button .buttonDisabled {
      color: #141414;
      background-color: #666; }
    @media (min-width: 1024px) {
      .account-box__button {
        margin: 0;
        min-width: 288px;
        line-height: 1; }
        .account-box__button:hover {
          opacity: 0.5; } }
    .account-box__button a:focus, .account-box__button a:active {
      color: #fff !important; }
    @media (min-width: 1024px) {
      .account-box__button {
        min-width: 0;
        width: 150px; } }
  .account-box .account-name {
    font-weight: bold;
    font-size: 1.6rem; }
    .account-box .account-name .material-icons-outlined {
      font-size: 1.8rem;
      vertical-align: middle;
      margin: 0 0.8rem 0.3rem 0; }
    .account-box .account-name .account-name-image {
      width: 34px;
      height: 34px;
      margin: 0 10px 0 0;
      position: relative;
      overflow: hidden;
      border-radius: 50%;
      display: inline-block;
      vertical-align: middle; }
      .account-box .account-name .account-name-image img {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        -o-object-fit: cover;
           object-fit: cover;
        max-width: none;
        width: 100%;
        height: 100%; }
    .account-box .account-name span {
      white-space: nowrap; }
  .account-box .point {
    margin: 0 0 0 1rem;
    line-height: 1.4; }
    .account-box .point dt {
      color: #666666;
      font-size: 1.4rem;
      white-space: nowrap; }
    .account-box .point dd {
      margin: 0;
      color: #256614;
      font-weight: bold;
      font-size: 1.4rem;
      white-space: nowrap; }
      .biz .account-box .point dd {
        color: #B0520B; }
  .account-box .button {
    margin: 0 0 0 1rem;
    border: 1px solid #256614;
    border-radius: 1.7rem;
    padding: 0 1.7rem 0 1.5rem;
    line-height: 3.2rem;
    text-decoration: none;
    font-size: 1.4rem;
    white-space: nowrap;
    color: #256614;
    font-weight: bold;
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content; }
    .account-box .button .material-icons-outlined {
      font-size: 1.8rem;
      vertical-align: middle;
      margin: 0 0.8rem 0.3rem 0; }

@media (min-width: 1024px) {
  ul.news-records {
    list-style: none;
    margin: 2rem 0;
    padding: 0; }
    ul.news-records > li {
      margin: 0 0 1px;
      font-size: 1.6rem; }
      ul.news-records > li a {
        display: block;
        background: #fff;
        border-left: 5px solid #256614;
        color: inherit;
        text-decoration: none;
        padding: 10px 25px;
        max-height: -webkit-fit-content;
        max-height: -moz-fit-content;
        max-height: fit-content; }
        .biz ul.news-records > li a {
          border-left-color: var(--biz-main-color); } }

@media (max-width: 1023px) {
  ul.news-records {
    list-style: none;
    margin: 0.5rem 0 1rem;
    padding: 0; }
    ul.news-records > li {
      margin: 0 0 1px;
      font-size: 1.6rem; }
      ul.news-records > li a {
        display: block;
        background: #fff;
        border-left: 5px solid #256614;
        color: inherit;
        text-decoration: none;
        padding: 10px 15px;
        max-height: -webkit-fit-content;
        max-height: -moz-fit-content;
        max-height: fit-content; }
        .biz ul.news-records > li a {
          border-left-color: var(--biz-main-color); } }

p.annotation {
  font-size: 1.4rem;
  margin: 0.5rem 0;
  color: #666666; }

.category-card-tags {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  padding: 0;
  margin: 10px 0;
  gap: 10px; }
  .category-card-tags li a {
    display: block;
    color: #256614;
    border: 1px solid #256614;
    font-size: 1.4rem;
    border-radius: 3px;
    padding: 7px 10px;
    text-decoration: none; }

@media (min-width: 1024px) {
  .sidebar-toggle-button {
    display: none; }
  .sidebar-navigation-wrapper {
    width: 320px;
    order: 1;
    background: #edebe2; }
    .biz .sidebar-navigation-wrapper {
      background: #d8d4cd; }
  .sidebar-navigation .logo {
    background: #fff;
    color: #141414;
    padding: 40px;
    display: flex;
    align-items: center;
    text-decoration: none;
    display: none; }
    .sidebar-navigation .logo .logo-img {
      padding: 0 30px 0 0;
      max-width: 110px;
      max-height: 80px; }
    .sidebar-navigation .logo .logo-name {
      font-size: 2rem;
      font-weight: bold;
      margin: 0 0 5px; }
    .sidebar-navigation .logo .logo-en {
      font-size: 1.4rem; }
  .sidebar-navigation .search-form {
    padding: 20px 40px; }
    .sidebar-navigation .search-form h2 {
      font-size: 1.4rem;
      margin: 25px 0 15px;
      position: relative;
      color: #141414; }
      .sidebar-navigation .search-form h2::before {
        background: #141414;
        width: 25px;
        height: 5px;
        position: absolute;
        left: -40px;
        top: 7px;
        content: "";
        display: block; }
    .sidebar-navigation .search-form dl.accordion {
      background: #fff;
      border-radius: 5px;
      margin: 1rem 0; }
      .sidebar-navigation .search-form dl.accordion input[type="checkbox"] {
        display: none; }
      .sidebar-navigation .search-form dl.accordion label {
        display: block;
        cursor: pointer; }
        .sidebar-navigation .search-form dl.accordion label::before {
          font-family: "Material Icons Outlined";
          content: "\e835";
          font-size: 2.1rem;
          color: #ccd1d9;
          vertical-align: middle;
          margin: 0 0.8rem 0 0; }
      .sidebar-navigation .search-form dl.accordion input:checked + label::before {
        content: "\e834";
        color: inherit; }
      .sidebar-navigation .search-form dl.accordion dt {
        position: relative; }
        .sidebar-navigation .search-form dl.accordion dt label {
          padding: 3px 30px 3px 15px;
          font-size: 1.6rem; }
        .sidebar-navigation .search-form dl.accordion dt .toggle-button {
          position: absolute;
          right: 0;
          width: 35px;
          bottom: 0;
          top: 0; }
          .sidebar-navigation .search-form dl.accordion dt .toggle-button::before {
            position: absolute;
            content: "";
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            border-top: 10px solid #141414;
            border-left: 6px solid transparent;
            border-right: 6px solid transparent; }
          .sidebar-navigation .search-form dl.accordion dt .toggle-button:hover {
            opacity: 0.5; }
      .sidebar-navigation .search-form dl.accordion dd {
        margin: 0;
        display: none; }
        .sidebar-navigation .search-form dl.accordion dd label {
          padding: 0 15px;
          font-size: 1.4rem; }
          .sidebar-navigation .search-form dl.accordion dd label::before {
            margin: 0 0.7rem 0 0; }
        .sidebar-navigation .search-form dl.accordion dd ul {
          list-style: none;
          padding: 0;
          margin: 0; }
          .sidebar-navigation .search-form dl.accordion dd ul li {
            border-top: 1px solid #edebe2;
            padding: 0 0 0 5px; }
      .sidebar-navigation .search-form dl.accordion.opened dt .toggle-button::before {
        transform: translate(-50%, -50%) rotate(180deg); }
    .sidebar-navigation .search-form ul.checkboxes {
      list-style: none;
      padding: 0;
      margin: 10px 0; }
      .sidebar-navigation .search-form ul.checkboxes:last-child {
        margin-bottom: 40px; }
      .sidebar-navigation .search-form ul.checkboxes li {
        margin: 0 0 10px;
        background: #fff;
        border-radius: 5px; }
        .sidebar-navigation .search-form ul.checkboxes li input[type="checkbox"] {
          display: none; }
        .sidebar-navigation .search-form ul.checkboxes li label {
          display: block;
          cursor: pointer;
          padding: 3px 40px 3px 15px; }
          .sidebar-navigation .search-form ul.checkboxes li label::before {
            font-family: "Material Icons Outlined";
            content: "\e835";
            font-size: 2.1rem;
            color: #ccd1d9;
            vertical-align: middle;
            margin: 0 1rem 0 0; }
        .sidebar-navigation .search-form ul.checkboxes li input:checked + label::before {
          content: "\e834";
          color: inherit; }
    .sidebar-navigation .search-form .form-vertical {
      padding: 0 0 0 40px;
      position: relative; }
      .sidebar-navigation .search-form .form-vertical dt {
        position: absolute;
        left: 0;
        font-size: 1.6rem;
        line-height: 3.8rem; }
      .sidebar-navigation .search-form .form-vertical dd {
        margin: 0 0 10px; }
    .sidebar-navigation .search-form .form-horizon {
      margin: 20px 0; }
      .sidebar-navigation .search-form .form-horizon dt {
        font-size: 1.6rem;
        margin: 10px 0 0; }
      .sidebar-navigation .search-form .form-horizon dd {
        margin: 5px 0 0; }
    .sidebar-navigation .search-form .actions {
      text-align: center;
      margin: 0; }
      .sidebar-navigation .search-form .actions .button {
        display: block;
        width: 100%;
        color: #fff;
        background: #256614;
        height: 44px;
        border-radius: 22px;
        border: none;
        font-size: 1.6rem;
        font-weight: bold;
        margin: 10px auto;
        cursor: pointer; }
        .sidebar-navigation .search-form .actions .button .material-icons-outlined {
          color: inherit;
          font-size: 2rem;
          margin: 0 1rem 0 0;
          vertical-align: middle; }
      .sidebar-navigation .search-form .actions a.reset {
        color: inherit;
        float: left; }
        .sidebar-navigation .search-form .actions a.reset .material-icons-outlined {
          color: inherit;
          font-size: 1.7rem;
          vertical-align: middle; }
  .sidebar-menu {
    padding: 10px 20px; }
    .sidebar-menu ul {
      list-style: none;
      padding: 0 20px;
      margin: 0; }
      .sidebar-menu ul li a {
        display: block;
        position: relative;
        text-decoration: none;
        font-weight: bold; } }

@media (max-width: 1020px) {
  .sidebar-navigation-wrapper {
    display: none;
    background: rgba(255, 255, 255, 0.8);
    position: relative; } }

@media (max-width: 1020px) and (min-width: 1024px) {
  .sidebar-toggle-button {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    background: #edebe2 !important;
    width: 50px;
    z-index: 110; }
    .biz .sidebar-toggle-button {
      background: #d8d4cd; }
    .sidebar-toggle-button a {
      position: fixed;
      color: #141414;
      top: 50vh;
      left: 0;
      width: 50px;
      font-size: 1.4rem;
      text-decoration: none;
      display: block;
      text-align: center; }
      .sidebar-toggle-button a .material-icons-outlined {
        display: block; }
      .sidebar-toggle-button a.close {
        display: none; }
    .sidebar-toggle-button.home a {
      position: absolute;
      top: 400px; }
  .sidebar-navigation {
    width: 0;
    background: #edebe2;
    overflow-x: hidden;
    position: absolute;
    bottom: 0;
    top: 0;
    left: 50px; }
    .biz .sidebar-navigation {
      background: #d8d4cd; }
  .search-form {
    width: 320px; }
  body.tb-overflow-hidden {
    overflow: hidden; }
  body.tb-sidebar-opened .sidebar-toggle-button a.open {
    display: none; }
  body.tb-sidebar-opened .sidebar-toggle-button a.close {
    display: block; }
  body.tb-sidebar-opened .sidebar-navigation-wrapper {
    display: block;
    position: fixed;
    background: rgba(255, 255, 255, 0.7);
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 100;
    padding: 0 0 0 50px;
    width: auto;
    overflow: auto; }
    body.tb-sidebar-opened .sidebar-navigation-wrapper .logo {
      display: none; }
    body.tb-sidebar-opened .sidebar-navigation-wrapper.home {
      position: absolute; } }

@media (max-width: 1023px) {
  body.sidebar-opened {
    overflow: hidden; }
  .sidebar-toggle-button {
    display: none; }
  .sidebar-navigation-wrapper {
    display: none;
    position: fixed;
    background: rgba(0, 0, 0, 0.7);
    top: 60px;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 100; }
    body.sidebar-opened .sidebar-navigation-wrapper {
      display: block; }
  .sidebar-navigation {
    transition: all 0.5s;
    transform: translate(-100%, 0);
    background: #edebe2;
    overflow: auto;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0; }
    .sidebar-navigation .logo {
      display: none; }
    .sidebar-navigation .search-form {
      padding: 0 30px; }
      .sidebar-navigation .search-form h2 {
        font-size: 1.4rem;
        margin: 25px 0 15px;
        position: relative;
        color: #141414; }
        .sidebar-navigation .search-form h2::before {
          background: #141414;
          width: 20px;
          height: 5px;
          position: absolute;
          left: -30px;
          top: 7px;
          content: "";
          display: block; }
          .biz .sidebar-navigation .search-form h2::before {
            background: #1b415a; }
      .sidebar-navigation .search-form dl.accordion {
        background: #fff;
        border-radius: 5px; }
        .sidebar-navigation .search-form dl.accordion input[type="checkbox"] {
          display: none; }
        .sidebar-navigation .search-form dl.accordion label {
          display: block;
          cursor: pointer; }
          .sidebar-navigation .search-form dl.accordion label::before {
            font-family: "Material Icons Outlined";
            content: "\e835";
            font-size: 2.1rem;
            color: #ccd1d9;
            vertical-align: middle;
            margin: 0 0.8rem 0 0; }
        .sidebar-navigation .search-form dl.accordion input:checked + label::before {
          content: "\e834";
          color: inherit; }
        .sidebar-navigation .search-form dl.accordion dt {
          position: relative; }
          .sidebar-navigation .search-form dl.accordion dt label {
            padding: 3px 30px 3px 15px;
            font-size: 1.6rem; }
          .sidebar-navigation .search-form dl.accordion dt .toggle-button {
            position: absolute;
            right: 0;
            width: 35px;
            bottom: 0;
            top: 0; }
            .sidebar-navigation .search-form dl.accordion dt .toggle-button::before {
              position: absolute;
              content: "";
              top: 50%;
              left: 50%;
              transform: translate(-50%, -50%);
              border-top: 10px solid #141414;
              border-left: 6px solid transparent;
              border-right: 6px solid transparent; }
            .sidebar-navigation .search-form dl.accordion dt .toggle-button:hover {
              opacity: 0.5; }
        .sidebar-navigation .search-form dl.accordion dd {
          margin: 0;
          display: none; }
          .sidebar-navigation .search-form dl.accordion dd label {
            padding: 0 15px;
            font-size: 1.4rem; }
            .sidebar-navigation .search-form dl.accordion dd label::before {
              margin: 0 0.7rem 0 0; }
          .sidebar-navigation .search-form dl.accordion dd ul {
            list-style: none;
            padding: 0;
            margin: 0; }
            .sidebar-navigation .search-form dl.accordion dd ul li {
              border-top: 1px solid #edebe2;
              padding: 0 0 0 5px; }
        .sidebar-navigation .search-form dl.accordion.opened dt .toggle-button::before {
          transform: translate(-50%, -50%) rotate(180deg); }
      .sidebar-navigation .search-form ul.checkboxes {
        list-style: none;
        padding: 0;
        margin: 10px 0; }
        .sidebar-navigation .search-form ul.checkboxes:last-child {
          margin-bottom: 40px; }
        .sidebar-navigation .search-form ul.checkboxes li {
          margin: 0 0 10px;
          background: #fff;
          border-radius: 5px; }
          .sidebar-navigation .search-form ul.checkboxes li input[type="checkbox"] {
            display: none; }
          .sidebar-navigation .search-form ul.checkboxes li label {
            display: block;
            cursor: pointer;
            padding: 3px 40px 3px 15px; }
            .sidebar-navigation .search-form ul.checkboxes li label::before {
              font-family: "Material Icons Outlined";
              content: "\e835";
              font-size: 2.1rem;
              color: #ccd1d9;
              vertical-align: middle;
              margin: 0 1rem 0 0; }
          .sidebar-navigation .search-form ul.checkboxes li input:checked + label::before {
            content: "\e834";
            color: inherit; }
      .sidebar-navigation .search-form .form-vertical {
        padding: 0 0 0 40px;
        position: relative; }
        .sidebar-navigation .search-form .form-vertical dt {
          position: absolute;
          left: 0;
          font-size: 1.6rem;
          line-height: 3.8rem; }
        .sidebar-navigation .search-form .form-vertical dd {
          margin: 0 0 10px; }
      .sidebar-navigation .search-form .form-horizon {
        margin: 20px 0; }
        .sidebar-navigation .search-form .form-horizon dt {
          font-size: 1.6rem;
          margin: 10px 0 0; }
        .sidebar-navigation .search-form .form-horizon dd {
          margin: 5px 0 0; }
      .sidebar-navigation .search-form .actions {
        text-align: center;
        margin: 0; }
        .sidebar-navigation .search-form .actions .button {
          display: block;
          width: 100%;
          color: #fff;
          background: #256614;
          height: 44px;
          border-radius: 22px;
          border: none;
          font-size: 1.6rem;
          font-weight: bold;
          margin: 10px auto;
          cursor: pointer; }
          .sidebar-navigation .search-form .actions .button .material-icons-outlined {
            color: inherit;
            font-size: 2rem;
            margin: 0 1rem 0 0;
            vertical-align: middle; }
        .sidebar-navigation .search-form .actions a.reset {
          color: inherit;
          float: left; }
          .sidebar-navigation .search-form .actions a.reset .material-icons-outlined {
            color: inherit;
            font-size: 1.7rem;
            vertical-align: middle; }
  .sidebar-menu {
    padding: 30px 20px; }
    .sidebar-menu ul {
      list-style: none;
      padding: 0 20px;
      margin: 0; }
      .sidebar-menu ul li a {
        display: block;
        position: relative;
        text-decoration: none;
        font-weight: bold; }
        .sidebar-menu ul li a::before {
          width: 3.5rem;
          height: 3.5rem;
          line-height: 3.5rem;
          text-align: center;
          background: #fff;
          border-radius: 50%;
          font-family: "Material Icons";
          display: block;
          font-size: 2rem;
          position: absolute;
          left: 0;
          top: 50%;
          transform: translateY(-50%); } }

@media (min-width: 1024px) {
  .sitemap-links {
    list-style: none;
    padding: 0;
    margin: 0 -10px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px 0; }
    .sitemap-links li {
      width: 25%;
      padding: 10px; }
      .sitemap-links li a {
        background: #fbf9f5;
        display: block;
        font-size: 1.4rem;
        position: relative;
        padding: 12px 50px 12px 20px;
        text-decoration: none;
        font-weight: bold; }
        .sitemap-links li a .material-icons-outlined {
          position: absolute;
          right: 20px;
          top: 50%;
          transform: translateY(-50%);
          font-size: 2rem; } }

@media (max-width: 1023px) {
  .sitemap-links {
    list-style: none;
    padding: 0;
    margin: 20px 0;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    flex-direction: column; }
    .sitemap-links li {
      width: 100%; }
      .sitemap-links li a {
        background: #fbf9f5;
        display: block;
        font-size: 1.4rem;
        position: relative;
        padding: 12px 50px 12px 20px;
        text-decoration: none;
        font-weight: bold; }
        .sitemap-links li a .material-icons-outlined {
          position: absolute;
          right: 20px;
          top: 50%;
          transform: translateY(-50%);
          font-size: 2rem; } }

html body ::-moz-placeholder {
  color: #bbbcbc;
  opacity: 1; }

html body :-ms-input-placeholder {
  color: #bbbcbc;
  opacity: 1; }

html body ::placeholder {
  color: #bbbcbc;
  opacity: 1; }

select {
  background-color: #fff;
  color: inherit; }

.page-action {
  text-align: center;
  margin: 30px 0; }
  .page-action a,
  .page-action button,
  .page-action input {
    margin: 0 30px 10px; }

.require {
  position: absolute;
  top: 9px;
  left: 0px;
  color: #fff;
  background: var(--main-color);
  font-size: 1.4rem;
  padding: 0px 5px;
  margin: auto 1rem auto 0;
  font-weight: bold;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content; }
  .biz .require {
    background: var(--biz-main-color); }
  .agreement .require {
    top: 3px;
    left: 24px; }
  @media (max-width: 1023px) {
    .require {
      position: static;
      display: inline-block;
      margin: 0 0.5rem 0 0;
      padding: 1px 5px; } }

.checkbox-panel {
  max-width: 850px;
  margin: 20px auto;
  padding: 15px;
  background: #edebe2; }
  .biz .checkbox-panel {
    background: #f8f6f3; }
  .checkbox-panel input[type="checkbox"] {
    display: none; }
    .checkbox-panel input[type="checkbox"] + label {
      cursor: pointer;
      padding: 0 0 0 26px;
      display: block;
      position: relative; }
      .checkbox-panel input[type="checkbox"] + label::before {
        font-family: "Material Icons Outlined";
        font-size: 2.1rem;
        vertical-align: middle;
        margin: -0.5rem 0.8rem 0 0;
        content: "\e835";
        position: absolute;
        left: 0;
        top: 0; }
    .checkbox-panel input[type="checkbox"]:checked + label::before {
      color: inherit;
      content: "\e834"; }

.file-uploader {
  background: #edebe2;
  padding: 20px; }
  .biz .file-uploader {
    background: #f5f5f4; }

.file-uploader-inner {
  border: 1px dashed #B0520B;
  text-align: center;
  padding: 40px 20px; }
  .file-uploader-inner p {
    margin: 0 0 20px;
    line-height: 2; }

.button-file-selection {
  width: 200px;
  font-size: 1.6rem;
  border-radius: 2.4rem;
  background: #fff;
  color: #B0520B;
  border: 1px solid #B0520B;
  display: block;
  margin: 5px auto;
  padding: 1.4rem;
  font-weight: bold; }
  .button-file-selection .material-icons-outlined {
    font-size: 1.8rem;
    vertical-align: middle;
    margin: 0 0.5rem 0 0; }
  .button-file-selection input {
    display: none; }

.files {
  margin: 40px 0 0; }
  .files .file {
    background: #fbf9f5;
    margin: 0 0 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px; }
    .biz .files .file {
      background: #e0ded9; }
    .files .file .file-view img {
      vertical-align: middle;
      margin: 0 10px 0 0; }
    .files .file .file-action a {
      color: inherit; }
      .files .file .file-action a .material-icons-outlined {
        font-size: 1.8rem;
        vertical-align: middle;
        margin: -3px 5px 0 0; }

.toggle-button {
  cursor: pointer;
  margin: 15px 0;
  display: block; }
  .toggle-button input {
    display: none; }
  .toggle-button .toggle-button-inner {
    width: 40px;
    height: 20px;
    border-radius: 10px;
    background: var(--color-bg2);
    position: relative;
    transition: all 0.5s ease-in-out; }
    .biz .toggle-button .toggle-button-inner {
      background: var(--biz-color-bg2); }
    .toggle-button .toggle-button-inner::before {
      content: "";
      width: 20px;
      height: 20px;
      background: #fff;
      display: block;
      border: 1px solid var(--color-bg2);
      border-radius: 50%;
      position: absolute;
      top: 0px;
      left: 0;
      transition: all 0.5s; }
      .biz .toggle-button .toggle-button-inner::before {
        border: 1px solid var(--biz-color-bg2); }
  .toggle-button :checked + .toggle-button-inner {
    background: var(--main-color); }
    .biz .toggle-button :checked + .toggle-button-inner {
      background: var(--biz-main-color); }
    .toggle-button :checked + .toggle-button-inner::before {
      background: #fff;
      left: 21px; }
  .toggle-button :disabled + .toggle-button-inner {
    cursor: default;
    opacity: 0.2;
    background-color: #757575; }
    .toggle-button :disabled + .toggle-button-inner::before {
      background: #fff;
      border: 1px solid #757575;
      left: 0; }

@media (max-width: 1023px) {
  .toggle-button-container {
    position: relative; }
    .toggle-button-container .toggle-button {
      margin: 3px 0;
      position: absolute;
      right: 0;
      top: 0; }
    .toggle-button-container > dt {
      margin-bottom: 15px !important; } }

.loading-wrapper {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(255, 255, 255, 0.8);
  z-index: 5000;
  display: flex;
  justify-content: center;
  align-items: center; }
  .loading-wrapper .loading-message {
    text-align: center; }
  .loading-wrapper .loading-icon {
    -webkit-animation: 3s linear infinite rotation;
            animation: 3s linear infinite rotation; }

.loading-button,
.button.loading-button,
.sheet-form-actions .button.loading-button {
  position: relative;
  background: #1d5110;
  color: rgba(255, 255, 255, 0.5); }
  .loading-button::before,
  .button.loading-button::before,
  .sheet-form-actions .button.loading-button::before {
    font-family: "Material Icons Outlined";
    content: "\e627";
    font-size: 2rem;
    color: #fff;
    position: absolute;
    left: 50%;
    top: 50%;
    margin: -1rem 0 0 -1rem;
    -webkit-animation: 3s linear infinite rotation;
            animation: 3s linear infinite rotation; }

.login-sns {
  display: flex;
  justify-content: center;
  padding: 0 0 40px;
  flex-wrap: wrap;
  gap: 20px; }
  .login-sns .button-sns {
    width: 50%;
    max-width: 415px;
    min-height: 70px;
    border: 1px solid #ddd;
    padding: 10px;
    display: flex;
    align-items: center;
    gap: 27px;
    text-decoration: none;
    font-size: 1.6rem;
    font-weight: bold; }
    .login-sns .button-sns img {
      width: 50px; }
  @media (max-width: 1023px) {
    .login-sns {
      padding: 0 0 20px; } }

.nav-unlink {
  background: #f7f7f7;
  font-size: 1.4rem;
  padding: 5px 10px; }
  .nav-unlink a {
    display: inline-block;
    padding: 3px 0; }
  .nav-unlink .material-icons-outlined {
    vertical-align: middle;
    margin: -0.1rem 1rem 0 0; }

@media (min-width: 1024px) {
  .accordion-form {
    border-radius: 5px;
    overflow: hidden;
    margin: 0 0 25px; }
    .service-filter__container .accordion-form {
      margin: 0 0 20px; }
  .accordion-form-header {
    color: #141414;
    background: #edebe2;
    padding: 13px 20px 10px;
    position: relative; }
    .biz .accordion-form-header {
      background: var(--biz-color-bg2); }
    .accordion-form-header h2 {
      margin: 0;
      font-size: 1.6rem; }
    .accordion-form-header a.toggle-accordion {
      position: absolute;
      right: 20px;
      top: 50%;
      transform: translateY(-50%);
      display: block;
      text-decoration: none;
      color: #256614; }
      .accordion-form-header a.toggle-accordion::before {
        display: block;
        font-family: "Material Icons Outlined";
        font-size: 2.1rem;
        margin: 0 0.8rem 0 0;
        color: inherit;
        content: "\e313"; }
      .opened .accordion-form-header a.toggle-accordion::before {
        content: "\e316"; }
  .accordion-form-body {
    background: #fff;
    padding: 10px;
    display: none; }
    .opened .accordion-form-body {
      display: block; }
    .accordion-form-body dl {
      max-width: 750px;
      margin: 0 auto; }
      .accordion-form-body dl.horizon {
        display: flex;
        flex-wrap: wrap; }
        .accordion-form-body dl.horizon > dt {
          width: 220px;
          margin: 0 0 20px;
          padding: 8px 10px 8px 0;
          position: relative; }
        .accordion-form-body dl.horizon > dd {
          width: calc(100% - 220px);
          margin: 0 0 20px; }
      .accordion-form-body dl.vertical > dt {
        margin: 0 0 15px;
        position: relative; }
      .accordion-form-body dl.vertical > dd {
        margin: 0 0 20px; }
      .accordion-form-body dl.flex {
        display: flex;
        align-items: center;
        margin: 0 auto 10px;
        color: #666666; }
        .accordion-form-body dl.flex dt {
          font-size: 1.6rem;
          font-weight: bold; }
    .accordion-form-body input[type="text"],
    .accordion-form-body input[type="number"],
    .accordion-form-body input[type="password"] {
      border: 1px solid #ddd;
      padding: 10px 18px;
      border-radius: 3px; }
    .accordion-form-body textarea {
      border: 1px solid #ddd;
      padding: 10px 18px;
      border-radius: 3px;
      width: 100%;
      height: 6em; }
    .accordion-form-body .form-element-select {
      width: 260px; }
      .accordion-form-body .form-element-select select {
        border: 1px solid #ddd; } }

@media (max-width: 1023px) {
  .accordion-form {
    border-radius: 5px;
    overflow: hidden;
    margin: 0 0 25px; }
    .service-filter__container .accordion-form {
      margin: 0 0 10px; }
  .accordion-form-header {
    color: #141414;
    background: #edebe2;
    padding: 10px 20px 7px;
    position: relative; }
    .biz .accordion-form-header {
      background: var(--biz-color-bg2); }
    .accordion-form-header h2 {
      margin: 0;
      font-size: 1.6rem; }
    .accordion-form-header a.toggle-accordion {
      position: absolute;
      right: 10px;
      top: 50%;
      transform: translateY(-50%);
      display: block;
      text-decoration: none;
      color: #256614; }
      .accordion-form-header a.toggle-accordion::before {
        display: block;
        font-family: "Material Icons Outlined";
        font-size: 2.1rem;
        margin: 0 0.8rem 0 0;
        color: inherit;
        content: "\e313"; }
      .opened .accordion-form-header a.toggle-accordion::before {
        content: "\e316"; }
  .accordion-form-body {
    background: #fff;
    padding: 10px;
    display: none; }
    .opened .accordion-form-body {
      display: block; }
    .accordion-form-body dl {
      max-width: 750px;
      margin: 0 auto; }
      .accordion-form-body dl.horizon > dt {
        margin: 0;
        padding: 8px 0;
        position: relative;
        font-size: 1.6rem; }
      .accordion-form-body dl.horizon > dd {
        margin: 0 0 20px; }
      .accordion-form-body dl.vertical > dt {
        margin: 0 0 15px;
        position: relative; }
      .accordion-form-body dl.vertical > dd {
        margin: 0 0 20px; }
      .accordion-form-body dl .has-icon {
        margin-bottom: 5px; }
      .accordion-form-body dl.flex {
        display: flex;
        align-items: center;
        margin: 0 auto 10px;
        color: #666666; }
        .accordion-form-body dl.flex dt {
          font-size: 1.6rem;
          font-weight: bold; }
    .accordion-form-body input[type="text"],
    .accordion-form-body input[type="number"],
    .accordion-form-body input[type="password"] {
      border: 1px solid #ddd;
      padding: 10px 18px;
      border-radius: 3px; }
    .accordion-form-body textarea {
      border: 1px solid #ddd;
      padding: 10px 18px;
      border-radius: 3px;
      width: 100%;
      height: 6em; }
    .accordion-form-body .form-element-select {
      width: 260px; }
      .accordion-form-body .form-element-select select {
        border: 1px solid #ddd; } }

.has-icon {
  display: inline-block;
  position: relative; }
  .has-icon .material-icons-outlined {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.6rem;
    pointer-events: none; }

@media (min-width: 1024px) {
  .form-element-select {
    width: 100%;
    height: 3.8rem;
    position: relative; }
    .form-element-select::before {
      content: "";
      display: block;
      border-top: 10px solid #141414;
      border-left: 6px solid transparent;
      border-right: 6px solid transparent;
      position: absolute;
      top: 50%;
      right: 15px;
      transform: translateY(-50%); }
    .form-element-select select {
      border: none;
      height: 100%;
      width: 100%;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      font-size: 14px;
      padding: 0 25px 0 14px;
      background: #fff; }
      .form-element-select select:disabled {
        cursor: default;
        background: #E0E0E0; } }

@media (max-width: 1023px) {
  .form-element-select {
    width: 100%;
    height: 3.8rem;
    position: relative; }
    .form-element-select::before {
      content: "";
      display: block;
      border-top: 10px solid #141414;
      border-left: 6px solid transparent;
      border-right: 6px solid transparent;
      position: absolute;
      top: 50%;
      right: 15px;
      transform: translateY(-50%); }
    .form-element-select select {
      border: none;
      height: 100%;
      width: 100%;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      font-size: 14px;
      padding: 0 20px 0 14px;
      background: #fff; }
      .form-element-select select:disabled {
        cursor: default;
        background: #E0E0E0; } }

@media (min-width: 1024px) {
  .form-element-tel {
    display: inline-flex;
    align-items: center;
    gap: 15px;
    max-width: 300px;
    margin-right: 15px; }
    .form-element-tel input[type="text"] {
      width: 100%;
      flex: 3; }
      .form-element-tel input[type="text"]:first-child {
        flex: 1; } }

@media (max-width: 1023px) {
  .form-element-tel {
    display: flex;
    align-items: center;
    gap: 5px; }
    .form-element-tel input[type="text"] {
      width: 100%;
      flex: 3; }
      .form-element-tel input[type="text"]:first-child {
        flex: 1; }
    .form-element-tel span {
      margin: 0 0 5px; } }

input[type="radio"],
input[type="checkbox"] {
  display: none; }
  input[type="radio"]:disabled,
  input[type="checkbox"]:disabled {
    cursor: default; }
    input[type="radio"]:disabled + label::before,
    input[type="checkbox"]:disabled + label::before {
      color: #c2c2c2; }

.form-element-clickable {
  display: inline-block;
  margin: 0 0 5px; }
  .form-element-clickable input[type="radio"],
  .form-element-clickable input[type="checkbox"] {
    display: none; }
    .form-element-clickable input[type="radio"]:disabled::before,
    .form-element-clickable input[type="checkbox"]:disabled::before {
      color: #c2c2c2; }
    .form-element-clickable input[type="radio"] + label,
    .form-element-clickable input[type="checkbox"] + label {
      min-width: 140px;
      background: #fff;
      border: 1px solid #edebe2;
      display: inline-block;
      padding: 5px 18px;
      cursor: pointer;
      line-height: 1.5; }
      .form-element-clickable input[type="radio"] + label[disabled],
      .form-element-clickable input[type="checkbox"] + label[disabled] {
        opacity: 0.3; }
      .form-element-clickable input[type="radio"] + label::before,
      .form-element-clickable input[type="checkbox"] + label::before {
        font-family: "Material Icons Outlined";
        font-size: 2.1rem;
        vertical-align: middle;
        margin: 0 0.8rem 0 0; }
      .form-element-clickable input[type="radio"] + label.form-element-has-input,
      .form-element-clickable input[type="checkbox"] + label.form-element-has-input {
        width: 100%;
        display: flex !important;
        align-items: center; }
        .form-element-clickable input[type="radio"] + label.form-element-has-input > :nth-child(1),
        .form-element-clickable input[type="checkbox"] + label.form-element-has-input > :nth-child(1) {
          width: 100px; }
        .form-element-clickable input[type="radio"] + label.form-element-has-input > :nth-child(2),
        .form-element-clickable input[type="checkbox"] + label.form-element-has-input > :nth-child(2) {
          flex: 1; }
          .form-element-clickable input[type="radio"] + label.form-element-has-input > :nth-child(2) input,
          .form-element-clickable input[type="checkbox"] + label.form-element-has-input > :nth-child(2) input {
            width: 100%; }
    .form-element-clickable input[type="radio"]:checked + label,
    .form-element-clickable input[type="checkbox"]:checked + label {
      background: #edebe2;
      color: #141414;
      line-height: 1.5; }
      .form-element-clickable input[type="radio"]:checked + label::before,
      .form-element-clickable input[type="checkbox"]:checked + label::before {
        color: inherit; }
  .form-element-clickable input[type="radio"] + label::before {
    content: "\e836"; }
  .form-element-clickable input[type="radio"]:checked + label::before {
    content: "\e837"; }
  .form-element-clickable input[type="checkbox"] + label::before {
    content: "\e835"; }
  .form-element-clickable input[type="checkbox"]:checked + label::before {
    content: "\e834"; }

.form-element-column4 {
  display: flex;
  flex-wrap: wrap; }
  .form-element-column4 .form-element-clickable {
    width: 25%;
    padding: 0 5px 0 0; }
    .form-element-column4 .form-element-clickable input[type="radio"] + label,
    .form-element-column4 .form-element-clickable input[type="checkbox"] + label {
      display: block;
      min-width: 0; }

.form-element-column3 {
  display: flex;
  flex-wrap: wrap; }
  .form-element-column3 .form-element-clickable {
    width: 33.33%;
    padding: 0 5px 0 0; }
    .form-element-column3 .form-element-clickable input[type="radio"] + label,
    .form-element-column3 .form-element-clickable input[type="checkbox"] + label {
      display: block;
      min-width: 0; }

.form-element-column2 {
  display: flex;
  flex-wrap: wrap; }
  .form-element-column2 .form-element-clickable {
    width: 50%;
    padding: 0 5px 0 0; }
    .form-element-column2 .form-element-clickable input[type="radio"] + label,
    .form-element-column2 .form-element-clickable input[type="checkbox"] + label {
      display: block;
      min-width: 0;
      height: 100%; }

.form-element-column1 .form-element-clickable {
  display: block; }
  .form-element-column1 .form-element-clickable input[type="radio"] + label,
  .form-element-column1 .form-element-clickable input[type="checkbox"] + label {
    display: block;
    min-width: 0; }

@media (min-width: 1024px) {
  .pc-form-element-column4 {
    display: flex;
    flex-wrap: wrap; }
    .pc-form-element-column4 .form-element-clickable {
      width: 25%;
      padding: 0 5px 0 0; }
      .pc-form-element-column4 .form-element-clickable input[type="radio"] + label,
      .pc-form-element-column4 .form-element-clickable input[type="checkbox"] + label {
        display: block;
        min-width: 0; }
  .pc-form-element-column3 {
    display: flex;
    flex-wrap: wrap; }
    .pc-form-element-column3 .form-element-clickable {
      width: 33.33%;
      padding: 0 5px 0 0; }
      .pc-form-element-column3 .form-element-clickable input[type="radio"] + label,
      .pc-form-element-column3 .form-element-clickable input[type="checkbox"] + label {
        display: block;
        min-width: 0; }
  .pc-form-element-column2 {
    display: flex;
    flex-wrap: wrap; }
    .pc-form-element-column2 .form-element-clickable {
      width: 50%;
      padding: 0 5px 0 0; }
      .pc-form-element-column2 .form-element-clickable input[type="radio"] + label,
      .pc-form-element-column2 .form-element-clickable input[type="checkbox"] + label {
        display: block;
        min-width: 0; }
  .pc-form-element-column1 .form-element-clickable {
    display: block; }
    .pc-form-element-column1 .form-element-clickable input[type="radio"] + label,
    .pc-form-element-column1 .form-element-clickable input[type="checkbox"] + label {
      display: block;
      min-width: 0; } }

@media (max-width: 1023px) {
  .form-element-clickable input[type="radio"] + label,
  .form-element-clickable input[type="checkbox"] + label {
    min-width: 130px; }
    .form-element-clickable input[type="radio"] + label.form-element-has-input,
    .form-element-clickable input[type="checkbox"] + label.form-element-has-input {
      display: block;
      gap: 5px; }
      .form-element-clickable input[type="radio"] + label.form-element-has-input > :nth-child(1),
      .form-element-clickable input[type="checkbox"] + label.form-element-has-input > :nth-child(1) {
        width: auto; }
      .form-element-clickable input[type="radio"] + label.form-element-has-input input,
      .form-element-clickable input[type="checkbox"] + label.form-element-has-input input {
        margin-bottom: 0; }
  .sp-form-element-column3 {
    display: flex;
    flex-wrap: wrap; }
    .sp-form-element-column3 .form-element-clickable {
      width: 33.33%;
      padding: 0 5px 0 0; }
      .sp-form-element-column3 .form-element-clickable input[type="radio"] + label,
      .sp-form-element-column3 .form-element-clickable input[type="checkbox"] + label {
        display: block;
        min-width: 0; }
  .sp-form-element-column4 {
    display: flex;
    flex-wrap: wrap; }
    .sp-form-element-column4 .form-element-clickable {
      width: 25%;
      padding: 0 5px 0 0; }
      .sp-form-element-column4 .form-element-clickable input[type="radio"] + label,
      .sp-form-element-column4 .form-element-clickable input[type="checkbox"] + label {
        display: block;
        min-width: 0; }
  .sp-form-element-column2 {
    display: flex;
    flex-wrap: wrap; }
    .sp-form-element-column2 .form-element-clickable {
      width: 50%;
      padding: 0 5px 0 0; }
      .sp-form-element-column2 .form-element-clickable input[type="radio"] + label,
      .sp-form-element-column2 .form-element-clickable input[type="checkbox"] + label {
        display: block;
        min-width: 0; }
  .sp-form-element-column1 .form-element-clickable {
    display: block; }
    .sp-form-element-column1 .form-element-clickable input[type="radio"] + label,
    .sp-form-element-column1 .form-element-clickable input[type="checkbox"] + label {
      display: block;
      min-width: 0; } }

@media (min-width: 1024px) {
  .form-element-child {
    margin: 15px 0 0; } }

@media (max-width: 1023px) {
  .form-element-child {
    margin: 0 0 0 15px; } }

.form-element-name-boxes {
  display: flex;
  gap: 15px; }
  .form-element-name-boxes .form-element-name-box {
    flex: 1; }
    .form-element-name-boxes .form-element-name-box input[type="text"] {
      width: 100%; }

@media (min-width: 1024px) {
  .sheet-form {
    background: #fff;
    border-radius: 3px;
    padding: 15px 30px;
    margin: 10px 0;
    font-size: 1.6rem; }
    .sheet-form dl {
      margin: 0 auto; }
      .sheet-form dl.horizon {
        display: flex;
        flex-wrap: wrap; }
        .sheet-form dl.horizon > dt {
          position: relative;
          width: 220px;
          margin: 0 0 20px;
          padding: 8px 10px 8px 40px;
          font-weight: bold;
          line-height: 2rem; } }
        @media (min-width: 1024px) and (max-width: 1020px) {
          .sheet-form dl.horizon > dt {
            display: -ms-grid;
            display: grid;
            -ms-grid-columns: auto 1fr;
            grid-template-columns: auto 1fr;
            padding-left: 40px; } }

@media (min-width: 1024px) {
        .sheet-form dl.horizon > dd {
          width: calc(100% - 220px);
          margin: 0 0 30px; }
          .sheet-form dl.horizon > dd.read-only {
            padding: 8px 0; }
      .sheet-form dl.vertical > dt {
        margin: 0 0 15px;
        position: relative; }
      .sheet-form dl.vertical > dd {
        margin: 0 0 20px; }
      .sheet-form dl.flex {
        display: flex;
        align-items: center;
        margin: 0 auto 10px;
        color: #666666; }
        .sheet-form dl.flex dt {
          font-size: 1.6rem;
          font-weight: bold; }
    .sheet-form .form-container {
      max-width: 850px;
      margin: 0 auto; }
    .sheet-form .form-flex-wrapper {
      display: flex;
      gap: 15px; }
    .sheet-form input[type="text"],
    .sheet-form input[type="date"],
    .sheet-form input[type="datetime-local"],
    .sheet-form input[type="month"],
    .sheet-form input[type="time"],
    .sheet-form input[type="number"],
    .sheet-form input[type="email"],
    .sheet-form input[type="tel"],
    .sheet-form input[type="url"],
    .sheet-form input[type="search"],
    .sheet-form input[type="password"] {
      border: 1px solid #ddd;
      padding: 10px 18px; }
    .sheet-form textarea {
      border: 1px solid #ddd;
      padding: 10px 18px;
      width: 100%;
      height: 6em; }
    .sheet-form .form-element-select select {
      border: 1px solid #ddd; }
  .fig-message {
    background: #fff;
    padding: 70px 20px;
    text-align: center;
    line-height: 2; }
    .fig-message img {
      display: block;
      margin: 10px auto 80px; }
  .sns-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #ededed;
    padding: 0 0 20px;
    margin: 0 0 30px; }
    .sns-title .sns-name {
      display: flex;
      gap: 20px;
      align-items: center; }
      .sns-title .sns-name h2 {
        font-size: 1.6rem;
        margin: 0; }
    .sns-title .sns-status {
      font-size: 1.4rem; }
      .sns-title .sns-status .material-icons-outlined {
        vertical-align: middle;
        margin: -4px 8px 0 0;
        font-size: 2rem; }
    .sns-title .logo-img {
      width: 50px; }
  .profile-form {
    display: flex;
    gap: 40px;
    align-items: center; }
    .profile-form .avatar {
      width: 100px;
      height: 100px;
      max-height: 100px;
      border-radius: 50%;
      overflow: hidden;
      position: relative; }
      .profile-form .avatar.no-image {
        background: #f9f9f9; }
      .profile-form .avatar .material-icons-outlined {
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%); }
      .profile-form .avatar img {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
           object-fit: cover;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%); }
    .profile-form .profile-buttons {
      display: flex;
      gap: 20px; }
    .profile-form .button-default {
      width: 164px;
      line-height: 1.5; } }

@media (max-width: 1023px) {
  .sheet-form {
    background: #fff;
    padding: 20px;
    margin: 10px 0;
    font-size: 1.6rem; }
    .sheet-form dl.horizon > dt {
      margin: 0 0 5px;
      font-weight: bold; }
    .sheet-form dl.horizon > dd {
      margin: 0 0 30px; }
    .sheet-form dl.vertical > dt {
      margin: 0 0 5px; }
    .sheet-form dl.vertical > dd {
      margin: 0 0 20px; }
    .sheet-form dl.flex {
      display: flex;
      align-items: center;
      margin: 0 auto 10px;
      color: #666666; }
      .sheet-form dl.flex dt {
        font-size: 1.6rem;
        font-weight: bold; }
    .sheet-form input[type="text"],
    .sheet-form input[type="date"],
    .sheet-form input[type="datetime-local"],
    .sheet-form input[type="month"],
    .sheet-form input[type="time"],
    .sheet-form input[type="number"],
    .sheet-form input[type="email"],
    .sheet-form input[type="tel"],
    .sheet-form input[type="url"],
    .sheet-form input[type="search"],
    .sheet-form input[type="password"] {
      border: 1px solid #ddd;
      padding: 10px 18px;
      margin: 0 0 5px;
      font-size: 1.6rem; }
    .sheet-form textarea {
      border: 1px solid #ddd;
      padding: 10px 18px;
      width: 100%;
      height: 6em;
      margin: 0 0 5px; }
    .sheet-form .form-element-select select {
      border: 1px solid #ddd; }
  .fig-message {
    background: #fff;
    padding: 20px 20px;
    line-height: 2; }
    .fig-message img {
      display: block;
      margin: 10px auto 20px;
       }
  .sns-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #ededed;
    padding: 0 0 20px;
    margin: 0 0 30px; }
    .sns-title .sns-name {
      display: flex;
      gap: 20px;
      align-items: center; }
      .sns-title .sns-name h2 {
        font-size: 1.6rem;
        margin: 0; }
    .sns-title .sns-status {
      font-size: 1.4rem;
      white-space: nowrap; }
      .sns-title .sns-status .material-icons-outlined {
        vertical-align: middle;
        margin: -4px 8px 0 0;
        font-size: 2rem; }
    .sns-title .logo-img {
      width: 50px; }
  .profile-form {
    display: flex;
    gap: 25px;
    align-items: center; }
    .profile-form .avatar {
      width: 100px;
      height: 100px;
      max-height: 100px;
      border-radius: 50%;
      overflow: hidden;
      position: relative; }
      .profile-form .avatar.no-image {
        background: #f9f9f9; }
      .profile-form .avatar .material-icons-outlined {
        position: absolute;
        color: #666666;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%); }
      .profile-form .avatar img {
        width: 100%;
        height: 100%;
        position: absolute;
        left: 50%;
        top: 50%;
        -o-object-fit: cover;
           object-fit: cover;
        transform: translate(-50%, -50%); }
    .profile-form .profile-buttons {
      display: flex;
      gap: 20px;
      flex-flow: column;
      flex: 1; }
    .profile-form .button-default {
      width: 100%;
      font-size: 1.4rem;
      line-height: 1.5; } }

.switch-visibility-password {
  position: relative; }
  .switch-visibility-password .button-switch-visibility {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    border: none;
    background: transparent;
    padding: 6px 5px 3px;
    cursor: pointer; }
    .switch-visibility-password .button-switch-visibility::before {
      font-family: "Material Icons Outlined";
      content: "\e8f4";
      color: #757575;
      font-size: 1.6rem; }
  .switch-visibility-password.visible .button-switch-visibility::before {
    content: "\e8f5"; }

.fig-message img.fin__image {
  margin: 0 auto;
  padding: 0;
  display: flex;
  justify-content: center;
  max-width: 100%; }

@media (min-width: 1024px) {
  .sheet-form-actions {
    margin: 30px 0;
    text-align: center;
    min-height: 50px;
    position: relative; }
    .sheet-form .sheet-form-actions {
      border-top: 1px solid #edebe2;
      margin: 30px 0 0;
      padding: 30px 0 0; }
    .sns-title + .sheet-form-actions {
      border-top: none;
      padding-top: 0;
      margin: 30px 0 10px; }
    .sheet-form-actions .sheet-form-action-prev {
      position: absolute;
      left: 0;
      top: 0;
      font-size: 1.4rem;
      padding: 15px 0; }
      .sheet-form-actions .sheet-form-action-prev .material-icons-outlined {
        vertical-align: middle;
        font-size: 2rem;
        margin: 0 1rem 0 0; }
      .sheet-form-actions .sheet-form-action-prev.break-line {
        position: static;
        text-align: left;
        margin: 15px 0 0; }
    .sheet-form-actions .flex-button {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 20px;
      line-height: 1.5; }
    .sheet-form-actions .flex-button + .flex-button {
      margin-top: 20px; }
    .sheet-form-actions p {
      font-size: 1.4rem;
      margin: 30px 0; }
      .sheet-form-actions p .material-icons-outlined {
        vertical-align: middle;
        margin: 0 10px;
        font-size: 2rem; }
    .sheet-form-actions .button {
      font-size: 1.6rem;
      font-weight: bold;
      width: 100%;
      max-width: 288px;
      min-width: 0;
      border-radius: 30px;
      padding: 12px 10px;
      border: none;
      color: #fff;
      background: #256614;
      position: relative;
      cursor: pointer;
      text-decoration: none;
      line-height: 1.5;
      font-weight: bold;
      height: 46px;
      display: flex;
      justify-content: center;
      align-items: center; }
      .sheet-form-actions .button.--center {
        margin-inline: auto; }
      .biz .sheet-form-actions .button {
        background: var(--biz-main-color); }
      .sheet-form-actions .button .material-icons-outlined {
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 2rem; }
      .sheet-form-actions .button:not(.loading-button):hover {
        opacity: 0.7; }
      .sheet-form-actions .button:focus, .sheet-form-actions .button:active {
        opacity: 1; }
      .sheet-form-actions .button:disabled, .sheet-form-actions .button.--disabled {
        opacity: 0.5;
        color: #141414;
        background-color: #c2c2c2;
        cursor: default; }
      .sheet-form-actions .button .buttonDisabled {
        color: #141414;
        background-color: #666; } }
    @media (min-width: 1024px) and (min-width: 1024px) {
      .sheet-form-actions .button {
        margin: 0;
        min-width: 288px;
        line-height: 1; }
        .sheet-form-actions .button:hover {
          opacity: 0.5; } }

@media (min-width: 1024px) {
      .sheet-form-actions .button a:focus, .sheet-form-actions .button a:active {
        color: #fff !important; }
    .sheet-form-actions .button-secondary {
      font-size: 1.6rem;
      font-weight: bold;
      width: 100%;
      max-width: 288px;
      min-width: 0;
      border-radius: 30px;
      padding: 12px 10px;
      border: 1px solid #256614;
      color: #256614;
      background: #fff;
      position: relative;
      cursor: pointer;
      text-decoration: none;
      line-height: 1.5;
      font-weight: bold;
      height: 46px;
      display: flex;
      justify-content: center;
      align-items: center; }
      .sheet-form-actions .button-secondary.--center {
        margin-inline: auto; }
      .biz .sheet-form-actions .button-secondary {
        border: 1px solid var(--biz-main-color);
        color: var(--biz-main-color); }
      .sheet-form-actions .button-secondary .material-icons-outlined {
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 2rem;
        color: var(--main-color); }
        .biz .sheet-form-actions .button-secondary .material-icons-outlined {
          color: var(--biz-main-color); }
      .sheet-form-actions .button-secondary:not(.loading-button):hover {
        opacity: 0.7; }
      .sheet-form-actions .button-secondary:focus, .sheet-form-actions .button-secondary:active {
        opacity: 1; }
      .sheet-form-actions .button-secondary:disabled, .sheet-form-actions .button-secondary.--disabled {
        opacity: 0.5;
        color: #141414;
        border: none;
        background-color: #c2c2c2;
        cursor: default; }
        .biz .sheet-form-actions .button-secondary:disabled, .biz .sheet-form-actions .button-secondary.--disabled {
          color: #141414; }
        .sheet-form-actions .button-secondary:disabled .material-icons-outlined, .sheet-form-actions .button-secondary.--disabled .material-icons-outlined {
          color: #141414; }
          .biz .sheet-form-actions .button-secondary:disabled .material-icons-outlined, .biz .sheet-form-actions .button-secondary.--disabled .material-icons-outlined {
            color: #141414; }
      .sheet-form-actions .button-secondary .buttonDisabled {
        color: #141414;
        background-color: #666; } }
    @media (min-width: 1024px) and (min-width: 1024px) {
      .sheet-form-actions .button-secondary {
        margin: 0;
        min-width: 288px;
        line-height: 1; }
        .sheet-form-actions .button-secondary:hover {
          opacity: 0.5; } }

@media (min-width: 1024px) {
      .sheet-form-actions .button-secondary a:focus, .sheet-form-actions .button-secondary a:active {
        color: #fff !important; }
    .sheet-form-actions.sheet-form-actions-panel {
      background: #fff;
      padding: 40px;
      margin: 50px 0 0; }
  .sing-up {
    background-color: #fff;
    margin: 30px 0;
    padding: 30px;
    text-align: left;
    display: flex;
    justify-content: space-between;
    align-items: center; }
    .sing-up dl {
      margin: 0;
      max-width: 560px; }
      .sing-up dl dt {
        font-size: 1.6rem; }
      .sing-up dl dd {
        font-size: 1.4rem;
        margin: 20px 0 0; }
    .sing-up .sheet-form-action-next {
      text-align: center; } }

@media (max-width: 1023px) {
  .sheet-form-actions {
    margin: 30px 0;
    text-align: center; }
    .accordion-form-body .sheet-form-actions,
    .sheet-form .sheet-form-actions {
      border-top: 1px solid #edebe2;
      margin: 30px 0 0;
      padding: 30px 0 0; }
    .sns-title + .sheet-form-actions {
      border-top: none;
      padding-top: 0;
      margin: 30px 0 10px; }
    .sheet-form-actions .sheet-form-action-prev {
      margin: 30px 0 0;
      text-align: center; }
    .sheet-form-actions .flex-button {
      display: flex;
      flex-flow: column;
      gap: 20px;
      width: 288px;
      margin: 0 auto;
      line-height: 1.5; }
      .sheet-form-actions .flex-button.sp-reverse {
        flex-direction: column-reverse; }
    .sheet-form-actions .flex-button + .flex-button {
      margin-top: 20px; }
    .sheet-form-actions .material-icons-outlined {
      vertical-align: middle;
      font-size: 1.7rem;
      margin: 0 1rem 0 0; }
    .sheet-form-actions p {
      font-size: 1.4rem;
      margin: 30px 0; }
      .sheet-form-actions p .material-icons-outlined {
        vertical-align: middle;
        margin: 0 10px;
        font-size: 2rem; }
    .sheet-form-actions .button {
      font-size: 1.6rem;
      font-weight: bold;
      width: 100%;
      max-width: 288px;
      min-width: 0;
      border-radius: 30px;
      padding: 12px 10px;
      border: none;
      color: #fff;
      background: #256614;
      position: relative;
      cursor: pointer;
      text-decoration: none;
      line-height: 1.5;
      font-weight: bold;
      height: 46px;
      display: flex;
      justify-content: center;
      align-items: center; }
      .sheet-form-actions .button.--center {
        margin-inline: auto; }
      .biz .sheet-form-actions .button {
        background: var(--biz-main-color); }
      .sheet-form-actions .button .material-icons-outlined {
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 2rem; }
      .sheet-form-actions .button:not(.loading-button):hover {
        opacity: 0.7; }
      .sheet-form-actions .button:focus, .sheet-form-actions .button:active {
        opacity: 1; }
      .sheet-form-actions .button:disabled, .sheet-form-actions .button.--disabled {
        opacity: 0.5;
        color: #141414;
        background-color: #c2c2c2;
        cursor: default; }
      .sheet-form-actions .button .buttonDisabled {
        color: #141414;
        background-color: #666; } }
    @media (max-width: 1023px) and (min-width: 1024px) {
      .sheet-form-actions .button {
        margin: 0;
        min-width: 288px;
        line-height: 1; }
        .sheet-form-actions .button:hover {
          opacity: 0.5; } }

@media (max-width: 1023px) {
      .sheet-form-actions .button a:focus, .sheet-form-actions .button a:active {
        color: #fff !important; }
    .sheet-form-actions .button-secondary {
      font-size: 1.6rem;
      font-weight: bold;
      width: 100%;
      max-width: 288px;
      min-width: 0;
      border-radius: 30px;
      padding: 12px 10px;
      border: 1px solid #256614;
      color: #256614;
      background: #fff;
      position: relative;
      cursor: pointer;
      text-decoration: none;
      line-height: 1.5;
      font-weight: bold;
      height: 46px;
      display: flex;
      justify-content: center;
      align-items: center; }
      .sheet-form-actions .button-secondary.--center {
        margin-inline: auto; }
      .biz .sheet-form-actions .button-secondary {
        border: 1px solid var(--biz-main-color);
        color: var(--biz-main-color); }
      .sheet-form-actions .button-secondary .material-icons-outlined {
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 2rem;
        color: var(--main-color); }
        .biz .sheet-form-actions .button-secondary .material-icons-outlined {
          color: var(--biz-main-color); }
      .sheet-form-actions .button-secondary:not(.loading-button):hover {
        opacity: 0.7; }
      .sheet-form-actions .button-secondary:focus, .sheet-form-actions .button-secondary:active {
        opacity: 1; }
      .sheet-form-actions .button-secondary:disabled, .sheet-form-actions .button-secondary.--disabled {
        opacity: 0.5;
        color: #141414;
        border: none;
        background-color: #c2c2c2;
        cursor: default; }
        .biz .sheet-form-actions .button-secondary:disabled, .biz .sheet-form-actions .button-secondary.--disabled {
          color: #141414; }
        .sheet-form-actions .button-secondary:disabled .material-icons-outlined, .sheet-form-actions .button-secondary.--disabled .material-icons-outlined {
          color: #141414; }
          .biz .sheet-form-actions .button-secondary:disabled .material-icons-outlined, .biz .sheet-form-actions .button-secondary.--disabled .material-icons-outlined {
            color: #141414; }
      .sheet-form-actions .button-secondary .buttonDisabled {
        color: #141414;
        background-color: #666; } }
    @media (max-width: 1023px) and (min-width: 1024px) {
      .sheet-form-actions .button-secondary {
        margin: 0;
        min-width: 288px;
        line-height: 1; }
        .sheet-form-actions .button-secondary:hover {
          opacity: 0.5; } }

@media (max-width: 1023px) {
      .sheet-form-actions .button-secondary a:focus, .sheet-form-actions .button-secondary a:active {
        color: #fff !important; }
    .sheet-form-actions.sheet-form-actions-panel {
      background: #fff;
      padding: 40px 0;
      margin: 50px 0 0; }
  .sing-up {
    background: #fff;
    margin: 0;
    padding: 30px 20px; }
    .sing-up dl {
      text-align: left;
      margin: 0 0 30px; }
      .sing-up dl dt {
        font-size: 1.6rem; }
      .sing-up dl dd {
        font-size: 1.4rem;
        margin: 20px 0 0; } }

@media (min-width: 1024px) {
  .sheet-title {
    padding: 0 0 20px;
    margin: 0 0 30px;
    border-bottom: 1px solid #edebe2; }
    .sheet-title h2 {
      font-size: 1.8rem;
      margin: 0;
      line-height: 1.25; }
  .sheet-section-title {
    font-size: 1em;
    max-width: 810px;
    margin: 40px auto 20px;
    padding: 0 0 0 3rem;
    position: relative;
    color: #2b2b2b;
    font-weight: normal; }
    .sheet-section-title .num {
      width: 2rem;
      height: 2rem;
      border: 0.1rem solid #256614;
      color: #256614;
      text-align: center;
      line-height: 1.8rem;
      border-radius: 50%;
      font-size: 1.4rem;
      position: absolute;
      left: 0;
      top: 0; }
    .confirm .sheet-section-title {
      color: #256614;
      font-weight: bold; } }

@media (max-width: 1023px) {
  .sheet-title {
    margin: 0 0 25px;
    padding: 5px 0 15px;
    border-bottom: 1px solid #edebe2; }
    .sheet-title h2 {
      font-size: 1.8rem;
      margin: 0; }
    .sheet-title:first-child {
      border-top: none;
      margin-top: 0; }
  .sheet-section-title {
    font-size: 1em;
    margin: 40px 0 20px -2.5rem;
    padding: 0 0 0 3rem;
    position: relative;
    color: #2b2b2b;
    font-weight: normal; }
    .sheet-section-title .num {
      width: 2rem;
      height: 2rem;
      border: 0.1rem solid #256614;
      color: #256614;
      text-align: center;
      line-height: 1.8rem;
      border-radius: 50%;
      font-size: 1.4rem;
      position: absolute;
      left: 0;
      top: 0; }
    .confirm .sheet-section-title {
      color: #256614;
      font-weight: bold; } }

@media (min-width: 1024px) {
  .confirm-2column {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto;
    max-width: 890px;
    padding: 0 70px;
    width: 100%;
    align-items: baseline; }
    .confirm-2column.strip-side-padding {
      padding: 0; }
    .confirm-2column .confirm-2column-child {
      width: 50%;
      display: flex;
      flex-wrap: wrap;
      margin: 10px 0 0 !important;
      float: none !important; }
      .confirm-2column .confirm-2column-child dt {
        font-weight: bold;
        width: 8rem;
        margin: 0 0 10px; }
      .confirm-2column .confirm-2column-child dd {
        width: calc(100% - 8rem) !important;
        margin: 0 0 20px !important; }
      .confirm-2column .confirm-2column-child.flex-column {
        flex-flow: column; }
        .confirm-2column .confirm-2column-child.flex-column dt,
        .confirm-2column .confirm-2column-child.flex-column dd {
          width: auto !important; }
  .confirm dl {
    border-bottom: 1px solid #fbf9f5; }
    .confirm dl:last-child {
      border-bottom: none; }
    .confirm dl.horizon {
      display: flex;
      align-items: baseline;
      flex-wrap: wrap; }
      .confirm dl.horizon > dt {
        width: 220px;
        padding: 15px 0;
        font-size: 1.6rem;
        font-weight: bold;
        margin: 0; }
      .confirm dl.horizon > dd {
        width: calc(100% - 220px);
        padding: 15px 0;
        margin: 0; }
    .confirm dl.vertical {
      margin: 0 0 20px; }
      .confirm dl.vertical > dt {
        font-weight: bold;
        padding: 15px 0 0; }
      .confirm dl.vertical > dd {
        margin: 0;
        padding: 0 0 20px; }
      .confirm dl.vertical + .vertical > dt {
        padding-top: 0; } }

@media (max-width: 1023px) {
  .confirm-2column .confirm-2column-child {
    float: none !important; }
    .confirm-2column .confirm-2column-child dt {
      font-weight: bold;
      margin: 10px 0 0; }
    .confirm-2column .confirm-2column-child dd {
      margin: 5px 0 20px; }
    .confirm-2column .confirm-2column-child:first-child dt:first-child {
      border-top: none;
      padding-top: 0; }
    .confirm-2column .confirm-2column-child.flex-row {
      display: flex; }
      .confirm-2column .confirm-2column-child.flex-row dt {
        width: 40%;
        margin: 0 0 10px; }
      .confirm-2column .confirm-2column-child.flex-row dd {
        width: 60% !important;
        margin: 0 0 20px !important; }
  .sheet-form .confirm-2column {
    margin: 0; }
  .sheet-form .confirm,
  .confirm {
    margin: 0 auto; }
    .sheet-form .confirm dl,
    .confirm dl {
      padding: 0;
      margin: 0; }
      .sheet-form .confirm dl > dt,
      .confirm dl > dt {
        font-weight: bold; }
      .sheet-form .confirm dl > dd,
      .confirm dl > dd {
        margin: 0 0 20px; }
      .sheet-form .confirm dl:last-child,
      .confirm dl:last-child {
        border-bottom: none; }
      .sheet-form .confirm dl.horizon-force,
      .confirm dl.horizon-force {
        display: flex;
        flex-wrap: wrap; }
        .sheet-form .confirm dl.horizon-force > dt,
        .confirm dl.horizon-force > dt {
          width: 40%;
          padding: 15px 0;
          margin: 0; }
        .sheet-form .confirm dl.horizon-force > dd,
        .confirm dl.horizon-force > dd {
          width: 60%;
          padding: 15px 0;
          margin: 0; }
    .sheet-form .confirm .sheet-title + dl,
    .confirm .sheet-title + dl {
      border-top: none; } }

.element-group {
  margin: 25px auto; }
  .element-group + .element-group {
    border-top: 1px solid #fbf9f5;
    padding: 20px 0 0; }
    .element-group + .element-group .element-group-actions {
      display: block; }

.element-group-header {
  margin: 0 0 30px; }
  .element-group-header::after {
    content: "";
    clear: both;
    display: block; }

.element-group-title {
  float: left;
  font-weight: bold;
  font-size: 1.6rem; }

.element-group-actions {
  text-align: right;
  font-size: 1.6rem;
  margin: 0 0 15px;
  display: none; }
  .element-group-actions a {
    color: inherit; }
  .element-group-actions .material-icons-outlined {
    font-size: 1.8rem;
    vertical-align: middle;
    margin: 0 0.5rem 0 0; }

.add-record {
  background: #edebe2;
  text-align: center;
  font-size: 1.6rem;
  max-width: 850px;
  margin: 0 auto 15px; }
  .biz .add-record {
    background: #f5f5f4; }
  .add-record a {
    display: block;
    padding: 10px;
    text-decoration: none; }
  .add-record .material-icons-outlined {
    font-size: 2rem;
    vertical-align: middle;
    margin: -0.2rem 1rem 0 0; }

.add-record-source {
  display: none; }

@media (min-width: 1024px) {
  .agreement {
    background: #edebe2;
    padding: 20px;
    margin: 10px 0; }
    .biz .agreement {
      background: #f8f6f3; }
    .agreement .agreement-inner {
      max-width: 810px;
      margin: 0 auto; }
      .agreement .agreement-inner input[type="checkbox"] {
        display: none; }
        .agreement .agreement-inner input[type="checkbox"] + label {
          cursor: pointer;
          padding: 0 0 0 26px;
          margin: 0 0 15px;
          display: block;
          position: relative; }
          .agreement .agreement-inner input[type="checkbox"] + label:last-child {
            margin-bottom: 0; }
          .agreement .agreement-inner input[type="checkbox"] + label.has-require {
            margin-left: 4rem; }
          .agreement .agreement-inner input[type="checkbox"] + label::before {
            font-family: "Material Icons Outlined";
            font-size: 2.1rem;
            vertical-align: middle;
            margin: -0.5rem 0.8rem 0 0;
            content: "\e835";
            position: absolute;
            left: 0;
            top: 0; }
        .agreement .agreement-inner input[type="checkbox"]:checked + label::before {
          color: inherit;
          content: "\e834"; }
        .agreement .agreement-inner input[type="checkbox"]:disabled + label {
          cursor: default; }
          .agreement .agreement-inner input[type="checkbox"]:disabled + label::before {
            opacity: 0.3; }
      .agreement .agreement-inner ul {
        padding: 10px 20px;
        list-style: none;
        margin: 0; }
        .agreement .agreement-inner ul li {
          margin: 5px 0;
          padding: 0 0 0 15px;
          position: relative;
          color: #666666; }
          .agreement .agreement-inner ul li::before {
            content: "";
            display: block;
            width: 8px;
            height: 8px;
            background: #141414;
            border-radius: 50%;
            position: absolute;
            left: 0;
            top: 0.7em;
            transform: translateY(-50%); }
            .biz .agreement .agreement-inner ul li::before {
              background: #B0520B; }
          .agreement .agreement-inner ul li .material-icons-outlined {
            vertical-align: middle;
            font-size: 1.8rem;
            margin: -0.4rem 0 0 0.8rem; }
        .agreement .agreement-inner ul.no-mark li {
          margin: 10px 0;
          padding: 0; }
          .agreement .agreement-inner ul.no-mark li::before {
            display: none; }
        .agreement .agreement-inner ul ul {
          margin: 0 0 10px;
          padding: 0; }
          .agreement .agreement-inner ul ul li {
            margin: 5px 0; }
            .agreement .agreement-inner ul ul li::before {
              content: "";
              display: block;
              width: 5px;
              height: 1px;
              background: #256614;
              border-radius: 0;
              position: absolute;
              left: 0;
              top: 0.7em;
              transform: translateY(-50%); }
              .biz .agreement .agreement-inner ul ul li::before {
                background: #B0520B; } }

@media (max-width: 1023px) {
  .agreement {
    background: #edebe2;
    padding: 20px;
    margin: 20px 0; }
    .biz .agreement {
      background: #f8f6f3; }
    .agreement .agreement-inner {
      margin: 0 auto; }
      .agreement .agreement-inner input[type="checkbox"] {
        display: none; }
        .agreement .agreement-inner input[type="checkbox"] + label {
          cursor: pointer;
          padding: 0 0 0 26px;
          margin: 0 0 15px;
          display: block;
          position: relative; }
          .agreement .agreement-inner input[type="checkbox"] + label:last-child {
            margin-bottom: 0; }
          .agreement .agreement-inner input[type="checkbox"] + label.has-require {
            margin-left: 4rem; }
          .agreement .agreement-inner input[type="checkbox"] + label::before {
            font-family: "Material Icons Outlined";
            font-size: 2.1rem;
            vertical-align: middle;
            margin: -0.5rem 0.8rem 0 0;
            content: "\e835";
            position: absolute;
            left: 0;
            top: 0; }
        .agreement .agreement-inner input[type="checkbox"]:checked + label::before {
          color: inherit;
          content: "\e834"; }
      .agreement .agreement-inner ul {
        padding: 10px 20px;
        list-style: none;
        margin: 0; }
        .agreement .agreement-inner ul li {
          margin: 5px 0;
          padding: 0 0 0 15px;
          position: relative;
          color: #666666;
          font-size: 1.4rem; }
          .agreement .agreement-inner ul li::before {
            content: "";
            display: block;
            width: 8px;
            height: 8px;
            background: #141414;
            border-radius: 50%;
            position: absolute;
            left: 0;
            top: 0.7em;
            transform: translateY(-50%); }
            .biz .agreement .agreement-inner ul li::before {
              background: #B0520B; }
          .agreement .agreement-inner ul li .material-icons-outlined {
            vertical-align: middle;
            font-size: 1.8rem;
            margin: -0.3rem 0 0 0.8rem; }
        .agreement .agreement-inner ul.no-mark li {
          margin: 20px 0;
          padding: 0; }
          .agreement .agreement-inner ul.no-mark li::before {
            display: none; }
        .agreement .agreement-inner ul ul {
          margin: 0 0 10px;
          padding: 0; }
          .agreement .agreement-inner ul ul li {
            margin: 5px 0; }
            .agreement .agreement-inner ul ul li::before {
              content: "";
              display: block;
              width: 5px;
              height: 1px;
              background: #256614;
              border-radius: 0;
              position: absolute;
              left: 0;
              top: 0.7em;
              transform: translateY(-50%); }
              .biz .agreement .agreement-inner ul ul li::before {
                background: #B0520B; } }

.agreement__agreement-inner {
  max-width: 810px;
  margin: 0 auto; }
  .agreement__agreement-inner .form-element-clickable input[type="checkbox"] + label {
    border: none;
    position: relative; }
    .agreement__agreement-inner .form-element-clickable input[type="checkbox"] + label::before {
      position: absolute;
      top: 0px;
      left: -5px; }
  .agreement__agreement-inner .form-element-clickable input[type="checkbox"]:checked + label {
    background: none; }

.agreement input[type="checkbox"] {
  border: none; }
  .agreement input[type="checkbox"]:disabled {
    cursor: default; }
    .agreement input[type="checkbox"]:disabled + label::before {
      cursor: default;
      opacity: 0.3; }

.agreement__scroll-content {
  max-height: 300px;
  overflow-y: auto;
  padding: 10px;
  border: 1px solid var(--black);
  border-radius: 5px;
  background: #fff; }
  .agreement__scroll-content__text {
    font-size: 1.6rem;
    color: var(--color-text);
    line-height: 1.3; }
    .agreement__scroll-content__text p {
      margin: 0;
      padding: 0;
      line-height: 1.3; }

.has-affix {
  display: flex;
  align-items: center;
  gap: 15px;
  flex-wrap: wrap; }
  .has-affix > span {
    white-space: nowrap; }

.error {
  color: #c10000;
  margin: 2rem 0; }

.error-element {
  color: #c10000;
  margin: 0.5rem 0;
  font-size: 1.4rem; }

.has-error textarea,
.has-error .form-element-select select,
.has-error input[type="text"],
.has-error input[type="date"],
.has-error input[type="datetime-local"],
.has-error input[type="month"],
.has-error input[type="time"],
.has-error input[type="number"],
.has-error input[type="email"],
.has-error input[type="tel"],
.has-error input[type="url"],
.has-error input[type="search"],
.has-error input[type="password"] {
  border: 1px solid #c10000;
  background: #fff7f7; }

.alert {
  border-radius: 5px;
  padding: 15px 50px 15px 20px;
  position: relative;
  background: #ededed;
  margin: 10px 0;
  font-size: 1.6rem;
  border: 1px solid #141414; }
  .alert .alert-message {
    display: flex;
    gap: 20px;
    align-items: center; }
    .alert .alert-message .material-icons-outlined {
      vertical-align: middle;
      margin-top: -0.2rem; }
  .alert .close {
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    color: #141414; }
    .alert .close .material-icons-outlined {
      vertical-align: bottom; }
  .alert .material-icons-outlined {
    font-size: 2rem; }
  .alert.alert-success {
    border: 1px solid #c7d9b1;
    background: #f2f7ec;
    color: #405527; }
  .alert.alert-warning {
    border: 1px solid #ead8ae;
    background: #fff2d3;
    color: #5f5131; }
  .alert.alert-error {
    border: 1px solid #e5cfc9;
    background: #ffe6e0;
    color: #7b3d2f; }
  .alert.alert-info {
    border: 1px solid #bcdae2;
    background: #ebfbff;
    color: #385860; }

.revise-form {
  display: flex;
  justify-content: center;
  flex-flow: column;
  gap: 1rem; }
  .revise-form .sheet-form-action-prev {
    margin: 0 auto !important; }
  .revise-form .revise-button {
    border: 1px solid #141414;
    font-weight: bold;
    margin: 0 auto;
    line-height: 3.2rem;
    text-decoration: none;
    font-size: 1.4rem;
    white-space: nowrap;
    font-size: 1.6rem;
    min-width: 288px;
    border-radius: 30px;
    padding: 12px 10px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    position: relative;
    cursor: pointer;
    height: 46px;
    position: relative !important; }
    .revise-form .revise-button a {
      text-decoration: none; }
    @media (min-width: 1024px) {
      .revise-form .revise-button {
        width: 330px;
        min-width: 328px; } }
    .revise-form .revise-button .material-icons-outlined {
      position: absolute;
      left: 15px;
      top: 50%;
      transform: translateY(-50%);
      font-size: 2rem; }

input[type="button"]:not(.loading-button):disabled,
input[type="submit"]:not(.loading-button):disabled,
button:not(.loading-button):disabled {
  opacity: 0.5;
  cursor: default; }
  input[type="button"]:not(.loading-button):disabled:hover,
  input[type="submit"]:not(.loading-button):disabled:hover,
  button:not(.loading-button):disabled:hover {
    opacity: 0.5 !important; }

@media (min-width: 1024px) {
  .btn {
    margin: 0;
    display: inline-block;
    text-align: center;
    font-size: 1.6rem;
    color: #fff;
    background: #256614;
    border-radius: 25px;
    border: none;
    position: relative;
    padding: 13px 25px;
    cursor: pointer;
    text-decoration: none;
    line-height: 1.5;
    font-weight: bold; }
    .btn .material-icons-outlined {
      position: absolute;
      right: 15px;
      top: 50%;
      transform: translateY(-50%);
      font-size: 2rem; }
    .btn:not(.loading-button):hover {
      opacity: 0.7; }
    .btn:focus, .btn:active {
      background: #1d5110;
      opacity: 1; }
    .btn.btn-secondary {
      color: var(--main-color);
      border: 1px solid var(--main-color);
      background: #fff; }
    .btn.btn-small {
      min-width: 0;
      border-radius: 20px;
      padding: 6px 15px;
      font-size: 1.4rem; }
    .btn.btn-large {
      padding: 20px 40px;
      border-radius: 35px; }
  .btn-home {
    font-size: 1.6rem;
    border-radius: 25px;
    min-width: 328px;
    padding: 13px;
    display: inline-block;
    text-decoration: none;
    text-align: center;
    font-weight: bold;
    color: #fff;
    background: var(--main-color);
    position: relative;
    line-height: 1.5; }
    .btn-home:hover {
      opacity: 0.7; }
    .btn-home .material-icons-outlined {
      vertical-align: middle;
      font-size: 2rem;
      position: absolute;
      left: 20px;
      top: 50%;
      transform: translateY(-50%); }
  .button-default {
    border-radius: 2rem;
    padding: 0.7rem 2rem;
    margin: 0 0 0 15px;
    color: var(--main-color);
    background: #fff;
    border: 1px solid currentColor;
    cursor: pointer;
    line-height: 1.5; }
    .button-default:hover {
      opacity: 0.7; } }

@media (max-width: 1023px) {
  .btn {
    margin: 0;
    display: inline-block;
    text-align: center;
    font-size: 1.6rem;
    color: #fff;
    background: #256614;
    border-radius: 25px;
    border: none;
    position: relative;
    padding: 12px 20px;
    cursor: pointer;
    text-decoration: none;
    line-height: 1.5;
    font-weight: bold; }
    .btn .material-icons-outlined {
      position: absolute;
      right: 15px;
      top: 50%;
      transform: translateY(-50%);
      font-size: 2rem; }
    .btn:not(.loading-button):hover {
      opacity: 0.7; }
    .btn:focus, .btn:active {
      background: #1d5110;
      opacity: 1; }
    .btn.btn-secondary {
      color: var(--main-color);
      border: 1px solid currentColor;
      background: #fff; }
    .btn.btn-small {
      min-width: 0;
      border-radius: 20px;
      padding: 6px 15px;
      font-size: 1.4rem; }
    .btn.btn-large {
      padding: 20px 40px;
      border-radius: 35px; }
  .btn-home {
    color: #fff;
    background: var(--main-color);
    border-radius: 30px;
    border: 1px solid #141414;
    min-width: 288px;
    padding: 18px 5px;
    display: inline-block;
    text-decoration: none;
    text-align: center;
    font-weight: bold;
    position: relative;
    line-height: 1.5; }
    .btn-home:hover {
      opacity: 0.7; }
    .btn-home .material-icons-outlined {
      vertical-align: middle;
      font-size: 2rem;
      position: absolute;
      left: 20px;
      top: 50%;
      transform: translateY(-50%); }
  .button-default {
    border-radius: 1.5rem;
    padding: 0.5rem 2rem;
    margin: 1rem 0 0 0;
    color: var(--main-color);
    background: #fff;
    border: 1px solid currentColor;
    cursor: pointer;
    line-height: 1.5; }
    .button-default:hover {
      opacity: 0.7; } }

.main-button {
  font-size: 1.6rem;
  font-weight: bold;
  width: 100%;
  max-width: 288px;
  min-width: 0;
  border-radius: 30px;
  padding: 12px 10px;
  border: none;
  color: #fff;
  background: var(--main-color);
  position: relative;
  cursor: pointer;
  text-decoration: none;
  line-height: 1.5;
  font-weight: bold;
  height: 46px;
  display: flex;
  justify-content: center;
  align-items: center; }
  .main-button.--center {
    margin-inline: auto; }
  .biz .main-button {
    background: var(--biz-main-color); }
  .main-button .material-icons-outlined {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 2rem; }
  .main-button:not(.loading-button):hover {
    opacity: 0.7; }
  .main-button:focus, .main-button:active {
    opacity: 1; }
  .main-button:disabled, .main-button.--disabled {
    opacity: 0.5;
    color: #141414;
    background-color: #c2c2c2;
    cursor: default; }
  .main-button .buttonDisabled {
    color: #141414;
    background-color: #666; }
  @media (min-width: 1024px) {
    .main-button {
      margin: 0;
      min-width: 288px;
      line-height: 1; }
      .main-button:hover {
        opacity: 0.5; } }
  .main-button a:focus, .main-button a:active {
    color: #fff !important; }

.sub-button {
  font-size: 1.6rem;
  font-weight: bold;
  width: 100%;
  max-width: 288px;
  min-width: 0;
  border-radius: 30px;
  padding: 12px 10px;
  border: 1px solid #256614;
  color: #256614;
  background: #fff;
  position: relative;
  cursor: pointer;
  text-decoration: none;
  line-height: 1.5;
  font-weight: bold;
  height: 46px;
  display: flex;
  justify-content: center;
  align-items: center; }
  .sub-button.--center {
    margin-inline: auto; }
  .biz .sub-button {
    border: 1px solid var(--biz-main-color);
    color: var(--biz-main-color); }
  .sub-button .material-icons-outlined {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 2rem;
    color: var(--main-color); }
    .biz .sub-button .material-icons-outlined {
      color: var(--biz-main-color); }
  .sub-button:not(.loading-button):hover {
    opacity: 0.7; }
  .sub-button:focus, .sub-button:active {
    opacity: 1; }
  .sub-button:disabled, .sub-button.--disabled {
    opacity: 0.5;
    color: #141414;
    border: none;
    background-color: #c2c2c2;
    cursor: default; }
    .biz .sub-button:disabled, .biz .sub-button.--disabled {
      color: #141414; }
    .sub-button:disabled .material-icons-outlined, .sub-button.--disabled .material-icons-outlined {
      color: #141414; }
      .biz .sub-button:disabled .material-icons-outlined, .biz .sub-button.--disabled .material-icons-outlined {
        color: #141414; }
  .sub-button .buttonDisabled {
    color: #141414;
    background-color: #666; }
  @media (min-width: 1024px) {
    .sub-button {
      margin: 0;
      min-width: 288px;
      line-height: 1; }
      .sub-button:hover {
        opacity: 0.5; } }
  .sub-button a:focus, .sub-button a:active {
    color: #fff !important; }

.sheet-form-action-next .main-button, .sheet-form-action-next
.sub-button, .sheet-form-action-next
.button, .sheet-form-action-next
.button-secondary {
  margin: 0 auto; }

@media (min-width: 1024px) {
  .modal-wrapper {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.7);
    z-index: 4000;
    display: none;
    overflow: auto; }
  .modal-center {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0; }
  .modal-close {
    padding: 10px 0; }
    .modal-close a {
      color: #fff;
      font-size: 4rem;
      width: 4rem;
      height: 4rem;
      display: block;
      margin: 0 0 0 auto;
      text-decoration: none; }
      .modal-close a .material-icons-outlined {
        font-size: 4rem;
        display: block; }
  .modal-inner {
    max-width: 100%;
    width: 870px;
    padding: 0 10px;
    margin: 0 auto;
    font-size: 1.4rem; }
  .modal {
    background: #fff;
    padding: 30px 60px;
    border-radius: 5px; }
    .modal p {
      line-height: 2; }
  .modal-action {
    border-top: 1px solid #ededed;
    display: flex;
    margin: 30px -30px 0;
    justify-content: space-around;
    padding: 30px 30px 0; }
    .modal-action .material-icons-outlined {
      vertical-align: middle;
      font-size: 2rem; }
    .modal-action a {
      font-size: 1.4rem; }
      .modal-action a .material-icons-outlined {
        margin-right: 0.5rem; }
    .modal-action .button {
      margin: 0;
      font-size: 1.6rem;
      min-width: 240px;
      color: #fff;
      background: var(--main-color);
      border-radius: 25px;
      border: none;
      position: relative;
      padding: 13px;
      cursor: pointer;
      display: flex;
      justify-content: center;
      align-items: center; }
      .modal-action .button .material-icons-outlined {
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 2rem; }
      .modal-action .button:hover {
        opacity: 0.7; }
      .modal-action .button:focus, .modal-action .button:active {
        opacity: 1; } }

@media (max-width: 1023px) {
  .modal-wrapper {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.7);
    z-index: 4000;
    display: none;
    overflow: auto; }
  .modal-center {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0; }
  .modal-close {
    padding: 10px 0; }
    .modal-close a {
      color: #fff;
      font-size: 4rem;
      width: 4rem;
      height: 4rem;
      display: block;
      margin: 0 0 0 auto;
      text-decoration: none; }
      .modal-close a .material-icons-outlined {
        font-size: 4rem;
        display: block; }
  .modal-inner {
    margin: 0;
    padding: 20px; }
  .modal {
    background: #fff;
    padding: 20px; }
    .modal .section {
      border-top: 5px solid #edebe2;
      margin-top: 0; }
  .modal-action {
    border-top: 1px solid #ededed;
    display: flex;
    flex-flow: column-reverse;
    margin: 30px 0 0;
    justify-content: center;
    padding: 30px 0 0;
    text-align: center;
    gap: 20px; }
    .modal-action .material-icons-outlined {
      vertical-align: middle;
      font-size: 2rem; }
    .modal-action a {
      font-size: 1.4rem; }
      .modal-action a .material-icons-outlined {
        margin-right: 0.5rem; }
    .modal-action .button {
      margin: 0 auto;
      font-size: 1.6rem;
      width: 288px;
      color: #fff;
      background: var(--main-color);
      border-radius: 25px;
      border: none;
      position: relative;
      padding: 13px;
      cursor: pointer;
      display: flex;
      justify-content: center;
      align-items: center; }
      .modal-action .button .material-icons-outlined {
        position: absolute;
        right: 15px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 2rem; }
      .modal-action .button:hover {
        opacity: 0.7; }
      .modal-action .button:focus, .modal-action .button:active {
        opacity: 1; } }

body.modal-open {
  overflow: hidden; }
  body.modal-open .modal-wrapper {
    display: block; }

@media (min-width: 1024px) {
  .page-footer {
    padding: 20px 0 20px;
    background: #fff; }
    .page-footer::after {
      content: "";
      clear: both;
      display: block; }
    .page-footer .container {
      max-width: 1200px;
      margin: 0 auto;
      padding: 0 20px;
      position: relative; }
    .page-footer .logo {
      padding: 0 0 20px;
      margin: 0 0 20px;
      color: inherit;
      text-decoration: none;
      display: flex;
      align-items: center;
      gap: 20px; }
      .page-footer .logo img {
        padding-left: 0; }
      .page-footer .logo .target-label {
        font-size: 1.4rem;
        background: #fbf9f5;
        padding: 7px 10px;
        line-height: 1.2; }
        .biz .page-footer .logo .target-label {
          background: #e0ded9; }
    .page-footer .footer-info {
      padding: 0 0 10px; }
      .page-footer .footer-info dl {
        margin: 1em 0;
        font-size: 1.4rem;
        display: flex;
        flex-flow: column wrap; }
        .page-footer .footer-info dl dt {
          font-weight: bold;
          width: 6em; }
        .page-footer .footer-info dl dd {
          margin: 0 0 15px; }
    .page-footer .footer-nav {
      float: left;
      width: 50%; }
      .page-footer .footer-nav::after {
        content: "";
        clear: both;
        display: block; }
      .page-footer .footer-nav ul {
        min-width: 200px;
        float: left;
        list-style: none;
        padding: 0; }
        .page-footer .footer-nav ul li {
          padding: 0 0 0 3rem;
          position: relative;
          font-size: 1.6rem;
          margin: 0 0 3rem; }
          .page-footer .footer-nav ul li a {
            color: inherit;
            font-weight: bold;
            text-decoration: none; }
          .page-footer .footer-nav ul li .material-icons-outlined {
            position: absolute;
            left: 0;
            top: 0;
            font-size: 1.9rem; }
    .page-footer .footer-bottom {
      border-top: 1px solid #edebe2;
      padding: 20px 0;
      clear: both; }
      .page-footer .footer-bottom::after {
        content: "";
        clear: both;
        display: block; }
    .page-footer .footer-nav-sub {
      float: left; }
      .page-footer .footer-nav-sub ul {
        list-style: none;
        margin: 0;
        padding: 0; }
        .page-footer .footer-nav-sub ul li {
          position: relative;
          float: left;
          font-size: 1.4rem;
          padding-left: 1.5rem;
          margin-left: 1.4rem; }
          .page-footer .footer-nav-sub ul li::before {
            content: "/";
            position: absolute;
            left: 0;
            color: #edebe2; }
          .page-footer .footer-nav-sub ul li:first-child {
            padding: 0;
            margin: 0; }
          .page-footer .footer-nav-sub ul li a {
            color: #666666; }
    .page-footer .copyright {
      font-size: 1.4rem;
      color: #757575;
      float: right;
      margin: 0; } }

@media (max-width: 1023px) {
  .page-footer {
    padding: 10px 0 90px;
    margin-top: 20px;
    background: #fff; }
    .page-footer .container {
      padding: 0 20px;
      position: relative; }
    .page-footer .logo {
      padding: 15px 0 20px;
      line-height: 1.3;
      color: inherit;
      text-decoration: none;
      display: flex;
      align-items: center;
      gap: 20px; }
      .page-footer .logo::after {
        content: "";
        clear: both;
        display: block; }
      .page-footer .logo img {
        padding-left: 0; }
      .page-footer .logo .target-label {
        font-size: 1.4rem;
        background: #fbf9f5;
        padding: 5px;
        white-space: nowrap; }
        .biz .page-footer .logo .target-label {
          background: #e0ded9; }
    .page-footer .footer-info dl {
      margin: 1em 0;
      font-size: 1.4rem;
      display: flex;
      flex-flow: column wrap; }
      .page-footer .footer-info dl dt {
        font-weight: bold;
        width: 6em;
        line-height: 1.3; }
      .page-footer .footer-info dl dd {
        line-height: 1.3;
        margin: 0 0 15px; }
    .page-footer .footer-nav::after {
      content: "";
      clear: both;
      display: block; }
    .page-footer .footer-nav .badge {
      position: absolute;
      right: 20px;
      top: 50%;
      line-height: 2.4rem;
      min-width: 2.4rem;
      color: #fff;
      background: #256614;
      font-size: 1.4rem;
      display: block;
      text-align: center;
      border-radius: 50%;
      transform: translateY(-50%); }
      .biz .page-footer .footer-nav .badge {
        background: #b5a234; }
    .page-footer .footer-nav ul.menu1 {
      list-style: none;
      padding: 0;
      margin: 0 -20px;
      border-top: 1px solid #edebe2; }
      .page-footer .footer-nav ul.menu1::after {
        content: "";
        clear: both;
        display: block; }
      .page-footer .footer-nav ul.menu1 > li {
        border-bottom: 1px solid #edebe2; }
        .page-footer .footer-nav ul.menu1 > li a {
          display: flex;
          align-items: center;
          color: inherit;
          font-size: 1.6rem;
          padding: 1.7rem 1.5rem 1.7rem 4.5rem;
          font-weight: bold;
          text-decoration: none;
          position: relative; }
          .page-footer .footer-nav ul.menu1 > li a .material-icons-outlined {
            position: absolute;
            left: 17px;
            top: 50%;
            font-size: 1.9rem;
            transform: translateY(-50%); }
        .page-footer .footer-nav ul.menu1 > li.task-search a {
          background: #141414;
          color: #fff; }
          .page-footer .footer-nav ul.menu1 > li.task-search a .material-icons-outlined {
            color: inherit; }
    .page-footer .footer-nav ul.menu2 {
      margin: 0 -20px;
      padding: 0;
      list-style: none; }
      .page-footer .footer-nav ul.menu2 li {
        margin: 1px 0 0; }
        .page-footer .footer-nav ul.menu2 li a {
          display: block;
          color: #141414;
          background: #fff;
          text-decoration: none;
          padding: 1.5rem;
          position: relative;
          font-weight: bold;
          font-size: 1.6rem; }
          .page-footer .footer-nav ul.menu2 li a .material-icons-outlined {
            vertical-align: middle;
            font-size: 2rem;
            margin: 0 1rem 0 0;
            color: #141414; }
          .page-footer .footer-nav ul.menu2 li a .point {
            position: absolute;
            right: 20px;
            top: 50%;
            transform: translateY(-50%);
            font-size: 1.4rem;
            font-weight: normal; }
    .page-footer .footer-bottom {
      padding: 10px 0 0;
      clear: both; }
    .page-footer .footer-nav-sub ul {
      list-style: none;
      margin: 10px -20px;
      padding: 0;
      display: flex;
      flex-wrap: wrap; }
      .page-footer .footer-nav-sub ul li {
        position: relative;
        font-size: 1.4rem;
        margin: 0 20px 15px; }
        .page-footer .footer-nav-sub ul li a {
          color: #666666; }
    .page-footer .copyright {
      font-size: 1.4rem;
      color: #757575;
      text-align: center;
      margin: 0;
      padding: 20px 0 0;
      border-top: 1px solid #edebe2; }
    .page-footer p.task-search {
      position: fixed;
      right: 12px;
      bottom: 10px;
      z-index: 15; }
      .page-footer p.task-search a {
        display: block;
        width: 5.5rem;
        min-height: 5.5rem;
        background: #141414;
        color: #fff;
        border-radius: 20%;
        font-size: 1.4rem;
        text-align: center;
        padding: 0.2rem 0 0.8rem;
        text-decoration: none; }
        .page-footer p.task-search a .material-icons-outlined {
          color: inherit;
          font-size: 3rem;
          display: block; }
    .page-footer p.task-search-close {
      position: fixed;
      right: 12px;
      bottom: 10px;
      z-index: 120;
      display: none; }
      body.sidebar-opened .page-footer p.task-search-close {
        display: block; }
      .page-footer p.task-search-close a {
        display: block;
        width: 5.5rem;
        min-height: 5.5rem;
        border: 1px solid #141414;
        color: #141414;
        background: #fff;
        border-radius: 20%;
        font-size: 1.4rem;
        text-align: center;
        padding: 0.2rem 0 0.8rem;
        text-decoration: none; }
        .page-footer p.task-search-close a .material-icons-outlined {
          color: inherit;
          font-size: 3rem;
          display: block; } }

@media (min-width: 1024px) {
  .footer-content__container {
    display: flex;
    gap: 40px;
    align-items: flex-start; } }

.footer-content__container .footer-info dl {
  margin: 0; }

@media (min-width: 1024px) {
  .footer-content__container .footer-info .footer-info__item {
    display: flex;
    gap: 10px; } }

.footer-content__container .footer-info .footer-info__item dt {
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content; }

.page-footer .footer-nav-sub {
  padding: 0 20px; }
  .page-footer .footer-nav-sub ul {
    display: flex;
    gap: 10px 20px; }
    .page-footer .footer-nav-sub ul li {
      padding: 0;
      margin: 0; }
      .page-footer .footer-nav-sub ul li::before {
        content: none; }

@media (min-width: 1024px) {
  p.pagetop {
    position: fixed;
    right: 30px;
    bottom: 30px;
    z-index: 2000;
    margin: 0; }
    p.pagetop a {
      display: block;
      width: 4rem;
      height: 4rem;
      border-radius: 50%;
      position: relative;
      color: #fff;
      background: rgba(0, 0, 0, 0.7); }
      p.pagetop a .material-icons-outlined {
        color: inherit;
        font-size: 3rem;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%); } }

@media (max-width: 1023px) {
  p.pagetop {
    position: fixed;
    right: 10px;
    bottom: 90px;
    z-index: 2000;
    margin: 0; }
    p.pagetop a {
      display: block;
      width: 3rem;
      height: 3rem;
      border-radius: 50%;
      color: #fff;
      background: rgba(0, 0, 0, 0.7); }
      p.pagetop a .material-icons-outlined {
        color: inherit;
        font-size: 2rem;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%); } }

@media (min-width: 1440px) {
  .pagetop-container {
    position: fixed;
    width: 1440px;
    left: 50%;
    transform: translateX(-50%);
    bottom: 0; } }

ul.news-records-pickup {
  list-style: none;
  margin: 0 0 2rem;
  padding: 0; }
  ul.news-records-pickup > li {
    border-bottom: 1px solid var(--color-bg2); }
    .biz ul.news-records-pickup > li {
      border-bottom: 1px solid var(--biz-color-bg2); }

.news-record__link {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto 1fr;
  grid-template-columns: auto 1fr;
  gap: 20px;
  align-items: baseline;
  text-decoration: none;
  color: inherit;
  border-bottom: 1px solid var(--color-bg2);
  border-left: 4px solid var(--main-color); }
  .biz .news-record__link {
    border-bottom: 1px solid var(--biz-color-bg2);
    border-left: 4px solid var(--biz-main-color); }
  .news-record__link:last-child {
    border-bottom: none; }
  @media (min-width: 1024px) {
    .news-record__link {
      margin: 0 0 1px;
      padding: 5px 0px 5px 10px;
      gap: 30px; } }

.news-record__date {
  color: #666666; }
  @media (max-width: 1023px) {
    .news-record__date {
      display: inline-block;
      padding: 7px 0 7px 7px; } }

.news-record__label {
  color: inherit;
  text-decoration: none;
  margin: 5px 10px 5px 0;
  line-height: 1.2;
  text-overflow: ellipsis;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  line-clamp: 2;
  -webkit-line-clamp: 2; }
  @media (min-width: 1024px) {
    .news-record__label {
      line-clamp: 1;
      -webkit-line-clamp: 1;
      padding-right: 10px; } }

.news-record__category {
  color: #141414;
  background: #fbf9f5;
  font-size: 1.4rem;
  padding: 5px;
  min-width: 120px;
  text-align: center;
  border-radius: 3px; }
  .biz .news-record__category {
    color: #1b415a;
    background: #bed4d2; }
  .news-record__category.--cat-1 {
    background: var(--cat1); }
  .news-record__category.--cat-2 {
    background: var(--cat2); }
  .news-record__category.--cat-3 {
    background: var(--cat3); }

@media (min-width: 1024px) {
  ul.news-records-has-img {
    list-style: none;
    margin: 2rem 0;
    padding: 0; }
    ul.news-records-has-img > li {
      margin: 0 0 1px;
      font-size: 1.6rem;
      background: #fff; }
      ul.news-records-has-img > li a {
        padding: 20px 30px;
        display: flex;
        gap: 20px;
        color: inherit;
        text-decoration: none;
        justify-content: flex-start;
        align-items: flex-start; }
      ul.news-records-has-img > li .img {
        width: 60px; }
      ul.news-records-has-img > li .date {
        margin: 0 0 5px; }
      ul.news-records-has-img > li .category {
        color: #141414;
        background: #fbf9f5;
        font-size: 1.4rem;
        padding: 7px;
        min-width: 120px;
        text-align: center;
        border-radius: 3px; } }

@media (max-width: 1023px) {
  ul.news-records-has-img {
    list-style: none;
    margin: 0 0 2rem;
    padding: 0; }
    ul.news-records-has-img > li {
      margin: 0 0 1px;
      font-size: 1.6rem;
      background: #fff; }
      ul.news-records-has-img > li a {
        padding: 30px;
        justify-content: flex-start;
        align-items: flex-start;
        display: flex;
        flex-direction: row-reverse;
        color: inherit;
        text-decoration: none;
        gap: 10px; }
      ul.news-records-has-img > li .img {
        width: 110px; }
      ul.news-records-has-img > li .info {
        flex: 1; }
      ul.news-records-has-img > li .date {
        color: #666666;
        display: inline-block;
        padding: 7px 0; }
      ul.news-records-has-img > li .category {
        color: #141414;
        font-size: 1.4rem;
        background: #fbf9f5;
        padding: 7px 5px;
        margin: 0 1.8rem;
        min-width: 120px;
        text-align: center;
        display: inline-block; } }

@media (min-width: 1024px) {
  .login-menu {
    border: 2px solid #256614;
    padding: 0 0 20px;
    margin: 50px 0 0; }
    .login-menu h2 {
      color: #256614;
      position: relative;
      margin: 20px 10px 0;
      font-size: 1.6rem;
      display: inline-block;
      background: #fbf9f5;
      line-height: 1.5;
      padding: 0 1rem; }
      .biz .login-menu h2 {
        background: #e0ded9; }
      .login-menu h2 .material-icons-outlined {
        vertical-align: middle;
        font-size: 1.6rem;
        margin: 0 1rem 0 0; }
    .login-menu p {
      margin: 1rem 2rem 0rem; }
  ul.login-menu-nav {
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 -1px -1px;
    padding: 0;
    list-style: none; }
    ul.login-menu-nav li {
      width: 25%;
      padding: 0 0 1px 1px; }
      ul.login-menu-nav li a {
        display: block;
        color: #141414;
        text-decoration: none;
        padding: 1rem 1.5rem;
        position: relative;
        font-weight: bold;
        height: 100%;
        font-size: 1.6rem; }
        ul.login-menu-nav li a .material-icons-outlined {
          vertical-align: middle;
          font-size: 2rem;
          margin: 0 1rem 0 0; }
        ul.login-menu-nav li a .badge {
          position: absolute;
          right: 7px;
          top: 50%;
          line-height: 2.4rem;
          min-width: 2.4rem;
          color: #fff;
          background: #256614;
          font-size: 1.4rem;
          display: block;
          text-align: center;
          border-radius: 50%;
          transform: translateY(-50%); }
        ul.login-menu-nav li a .point {
          position: absolute;
          right: 7px;
          top: 50%;
          transform: translateY(-50%);
          font-size: 1.4rem;
          font-weight: normal; } }

@media (max-width: 1023px) {
  .login-menu {
    border: 2px solid #141414;
    margin: 10px 0; }
    .login-menu h2 {
      color: #141414;
      position: relative;
      margin: 0 10px;
      font-size: 1.6rem;
      display: inline-block;
      background: #fbf9f5;
      line-height: 1.5;
      padding: 0 1rem; }
      .biz .login-menu h2 {
        background: #e0ded9; }
      .login-menu h2 .material-icons-outlined {
        vertical-align: middle;
        font-size: 1.6rem;
        margin: 0 1rem 0 0; }
    .login-menu p {
      margin: 0.5rem 2rem 0rem; }
  ul.login-menu-nav {
    margin: 15px 0 0;
    padding: 0;
    list-style: none; }
    ul.login-menu-nav li {
      margin: 1px 0 0; }
      ul.login-menu-nav li a {
        display: block;
        color: #141414;
        text-decoration: none;
        padding: 1rem 1.5rem;
        position: relative;
        font-weight: bold;
        font-size: 1.6rem; }
        ul.login-menu-nav li a .material-icons-outlined {
          vertical-align: middle;
          font-size: 2rem;
          margin: 0 1rem 0 0; }
        ul.login-menu-nav li a .badge {
          position: absolute;
          right: 20px;
          top: 50%;
          line-height: 2.4rem;
          min-width: 2.4rem;
          color: #fff;
          background: #256614;
          font-size: 1.4rem;
          display: block;
          text-align: center;
          border-radius: 50%;
          transform: translateY(-50%); }
        ul.login-menu-nav li a .point {
          position: absolute;
          right: 20px;
          top: 50%;
          transform: translateY(-50%);
          font-size: 1.4rem;
          font-weight: normal; } }

@media (min-width: 1024px) {
  .sns-wrap {
    display: flex; }
    .sns-wrap .twitter {
      flex: 1;
      padding: 0 20px 20px 0; }
    .sns-wrap .facebook {
      width: 360px;
      padding: 0 20px 20px 0; }
    .sns-wrap .banner-vertical {
      flex: 1; }
      .sns-wrap .banner-vertical ul {
        list-style: none;
        padding: 0;
        margin: 0; }
        .sns-wrap .banner-vertical ul li {
          margin: 0 0 20px; }
          .sns-wrap .banner-vertical ul li a {
            color: inherit;
            text-decoration: none;
            font-weight: bold;
            background: #fff;
            display: flex;
            align-items: center;
            font-size: 1.4rem; }
            .sns-wrap .banner-vertical ul li a img {
              width: 80px; }
            .sns-wrap .banner-vertical ul li a span {
              flex: 1; } }

@media (max-width: 1023px) {
  .sns-wrap .twitter {
    margin: 0 0 10px; }
  .sns-wrap .facebook {
    margin: 20px 0 10px;
    text-align: center; }
  .sns-wrap .banner-vertical {
    padding: 0 0 10px;
    border-bottom: 1px solid #ccd1d9; }
    .sns-wrap .banner-vertical ul {
      list-style: none;
      padding: 0;
      margin: 0; }
      .sns-wrap .banner-vertical ul li {
        margin: 0 auto 10px;
        max-width: 315px; }
        .sns-wrap .banner-vertical ul li a {
          color: inherit;
          text-decoration: none;
          font-weight: bold;
          background: #fff;
          display: flex;
          align-items: center;
          font-size: 1.4rem; }
          .sns-wrap .banner-vertical ul li a img {
            width: 50px; }
          .sns-wrap .banner-vertical ul li a span {
            flex: 1; } }

.login-banner__container {
  display: block;
  padding-top: 10px; }

@media (min-width: 1024px) {
  .visual-wrapper {
    position: relative;
    z-index: 120;
    aspect-ratio: 2.84/1;
    max-width: 1440px;
    margin-inline: auto; }
  .visual-wrapper .label-visitor {
    position: absolute;
    left: 0;
    bottom: 40px;
    color: #fff;
    padding: 10px;
    font-size: 3.2rem;
    background: #2b2b2b;
    z-index: 5;
    font-weight: bold; }
  .biz .visual-wrapper .label-visitor {
    color: #2b2b2b;
    background: #fff; } }

@media (max-width: 1023px) {
  .visual-wrapper {
    position: relative;
    background: #edebe2; }
  .biz .visual-wrapper {
    background: #d8d4cd; }
  .visual-wrapper .label-visitor {
    position: absolute;
    left: 0;
    bottom: 40px;
    color: #fff;
    padding: 5px 10px;
    font-size: 2.1rem;
    background: #2b2b2b;
    z-index: 5;
    font-weight: bold; }
  .biz .visual-wrapper .label-visitor {
    color: #2b2b2b;
    background: #fff; } }

@media (min-width: 1024px) {
  .home-carousel-wrapper {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.25);
    z-index: 0; }
    .home-carousel-wrapper .catch-copy {
      position: absolute;
      top: 8rem;
      bottom: 0;
      right: 0;
      left: 0;
      pointer-events: none; }
      .home-carousel-wrapper .catch-copy .inner {
        max-width: 1270px;
        height: 100%;
        margin: 0 auto; }
        .home-carousel-wrapper .catch-copy .inner h1 {
          font-size: 3.5rem;
          font-weight: bold;
          color: white;
          margin: auto 0 auto 16rem;
          line-height: 1.2;
          letter-spacing: 0.1rem; }
        .home-carousel-wrapper .catch-copy .inner img {
          display: block;
          max-height: 150%;
          margin: -100px auto 0 140px; }
    .home-carousel-wrapper .button-pause {
      position: absolute;
      bottom: 0;
      right: 0;
      width: 40px;
      height: 40px;
      border-radius: 0;
      border: none;
      color: #2b2b2b;
      background: #fff; }
      .home-carousel-wrapper .button-pause::before {
        display: block;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        font-size: 2.5rem;
        font-family: "Material Icons";
        content: "\e037"; }
    .home-carousel-wrapper .scroll {
      position: absolute;
      bottom: 0;
      right: 50px; }
    .home-carousel-wrapper.autoplay .button-pause::before {
      content: "\e034"; }
    .home-carousel-wrapper .home-carousel {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0; }
      .home-carousel-wrapper .home-carousel .slick-dots {
        position: absolute;
        bottom: 17px;
        list-style: none;
        display: block;
        text-align: center;
        padding: 0;
        margin: 0;
        width: 100%; }
        .home-carousel-wrapper .home-carousel .slick-dots li {
          position: relative;
          display: inline-block;
          height: 14px;
          width: 14px;
          margin: 0 5px;
          padding: 0; }
          .home-carousel-wrapper .home-carousel .slick-dots li button {
            border: 0;
            border: 2px solid #fff;
            background: transparent;
            display: block;
            height: 14px;
            width: 14px;
            padding: 0;
            outline: none;
            color: transparent;
            cursor: pointer;
            border-radius: 50%; }
          .home-carousel-wrapper .home-carousel .slick-dots li.slick-active button {
            background: #fff; }
      .home-carousel-wrapper .home-carousel .slick-arrow {
        position: absolute;
        top: 50%;
        width: 40px;
        height: 40px;
        border-radius: 50%;
        border: 1px solid #fff;
        background: transparent;
        transform: translateY(-50%);
        z-index: 6;
        text-indent: -9999px; }
        .home-carousel-wrapper .home-carousel .slick-arrow:focus {
          outline: none; }
        .home-carousel-wrapper .home-carousel .slick-arrow.slick-prev {
          left: 40px; }
          .home-carousel-wrapper .home-carousel .slick-arrow.slick-prev::before {
            font-family: "Material Icons";
            content: "\e5c4";
            color: #fff;
            display: block;
            position: absolute;
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%);
            text-indent: 0;
            font-size: 2.6rem; }
        .home-carousel-wrapper .home-carousel .slick-arrow.slick-next {
          right: 40px; }
          .home-carousel-wrapper .home-carousel .slick-arrow.slick-next::before {
            font-family: "Material Icons";
            content: "\e5c8";
            color: #fff;
            display: block;
            position: absolute;
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%);
            text-indent: 0;
            font-size: 2.6rem; }
      .home-carousel-wrapper .home-carousel .slick-track,
      .home-carousel-wrapper .home-carousel .slick-list {
        height: 100%; }
      .home-carousel-wrapper .home-carousel .slide {
        height: 100%;
        overflow: hidden; }
        .home-carousel-wrapper .home-carousel .slide .image {
          transition: transform 20s;
          height: 100%;
          width: 100%;
          background: no-repeat 50% 0%;
          background-size: cover; }
    .home-carousel-wrapper:not(.autoplay) .home-carousel .slide .image {
      transition: none;
      transform: scale(1); } }

@media (min-width: 1024px) and (max-width: 1020px) {
  .home-carousel-wrapper .catch-copy {
    top: 14rem; } }

@media (max-width: 1023px) {
  .home-carousel-wrapper {
    background: rgba(0, 0, 0, 0.25);
    position: relative; }
    .home-carousel-wrapper .catch-copy {
      position: absolute;
      top: 0;
      bottom: 0;
      right: 0;
      left: 0;
      pointer-events: none; }
      .home-carousel-wrapper .catch-copy .inner {
        height: 250px;
        margin: 0 auto; }
        .home-carousel-wrapper .catch-copy .inner img {
          max-width: 65%;
          display: block;
          max-height: 50%;
          margin: 0 auto 0 55px; }
    .home-carousel-wrapper .button-pause {
      position: absolute;
      bottom: 0;
      right: 0;
      width: 30px;
      height: 30px;
      border-radius: 0;
      border: none;
      color: #2b2b2b;
      background: #fff; }
      .home-carousel-wrapper .button-pause::before {
        display: block;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        font-size: 1.8rem;
        font-family: "Material Icons";
        content: "\e037"; }
    .home-carousel-wrapper.autoplay .button-pause::before {
      content: "\e034"; }
    .home-carousel-wrapper .home-carousel .slick-dots {
      position: absolute;
      bottom: 5px;
      list-style: none;
      display: block;
      text-align: center;
      padding: 0;
      margin: 0;
      width: 100%; }
      .home-carousel-wrapper .home-carousel .slick-dots li {
        position: relative;
        display: inline-block;
        height: 10px;
        width: 10px;
        margin: 0 5px;
        padding: 0; }
        .home-carousel-wrapper .home-carousel .slick-dots li button {
          border: 0;
          border: 2px solid #fff;
          background: transparent;
          display: block;
          height: 10px;
          width: 10px;
          padding: 0;
          outline: none;
          color: transparent;
          cursor: pointer;
          border-radius: 50%; }
        .home-carousel-wrapper .home-carousel .slick-dots li.slick-active button {
          background: #fff; }
    .home-carousel-wrapper .home-carousel .slick-arrow {
      position: absolute;
      top: 50%;
      width: 45px;
      height: 45px;
      border-radius: 50%;
      border: 1px solid #fff;
      background: transparent;
      transform: translateY(-50%);
      z-index: 6;
      text-indent: -9999px; }
      .home-carousel-wrapper .home-carousel .slick-arrow.slick-prev {
        left: 10px; }
        .home-carousel-wrapper .home-carousel .slick-arrow.slick-prev::before {
          font-family: "Material Icons";
          content: "\e5c4";
          color: #fff;
          display: block;
          position: absolute;
          left: 50%;
          top: 50%;
          transform: translate(-50%, -50%);
          text-indent: 0;
          font-size: 1.8rem; }
      .home-carousel-wrapper .home-carousel .slick-arrow.slick-next {
        right: 10px; }
        .home-carousel-wrapper .home-carousel .slick-arrow.slick-next::before {
          font-family: "Material Icons";
          content: "\e5c8";
          color: #fff;
          display: block;
          position: absolute;
          left: 50%;
          top: 50%;
          transform: translate(-50%, -50%);
          text-indent: 0;
          font-size: 1.8rem; }
    .home-carousel-wrapper .home-carousel .slide {
      overflow: hidden; }
      .home-carousel-wrapper .home-carousel .slide .image {
        transition: transform 20s;
        aspect-ratio: 2.84/1;
        background: no-repeat 50% 50%;
        background-size: cover; }
    .home-carousel-wrapper:not(.autoplay) .home-carousel .slide .image {
      transition: none;
      transform: scale(1); } }

@media (max-width: 1023px) {
  .top .tasks .task {
    background: none;
    border: none; } }

.sectionCar .home-carousel-wrapper {
  background: none; }
  @media (min-width: 1024px) {
    .sectionCar .home-carousel-wrapper {
      background: none; } }

.sectionCar .material-symbols-outlined {
  font-size: 1.4rem; }
  @media (min-width: 1024px) {
    .sectionCar .material-symbols-outlined {
      font-size: 24px; } }

.home-carousel__button {
  position: absolute;
  border: 1px solid #256614;
  color: #00a1c2;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  top: 35%;
  transform: translateY(-50%);
  width: 30px;
  height: 30px;
  border-radius: 50%;
  cursor: pointer;
  z-index: 10;
  display: flex !important;
  justify-content: center;
  align-items: center;
  min-width: 0; }
  @media (min-width: 1024px) {
    .home-carousel__button {
      top: 50%;
      width: 40px;
      height: 40px; } }
  @media (min-width: 1024px) {
    .home-carousel__button {
      top: 40%; } }
  .home-carousel__button.--prev {
    left: -10px; }
    @media (min-width: 1024px) {
      .home-carousel__button.--prev {
        left: -20px; } }
  .home-carousel__button.--next {
    right: -10px; }
  .--alert-displayed .home-carousel__button {
    display: none !important; }

.nav-visitor {
  padding: 0px 20px;
  margin: 0px auto;
  max-width: 1064px; }
  .nav-visitor::after {
    content: "";
    clear: both;
    display: block; }
  .nav-visitor ul {
    float: right;
    margin: 0;
    display: flex;
    align-items: flex-end; }
    .nav-visitor ul li {
      margin: 0 0 0 5px;
      font-size: 1.4rem;
      font-weight: bold; }
      .nav-visitor ul li a {
        display: block;
        text-align: center;
        min-width: 100px;
        color: #757575;
        background: #edebe2;
        padding: 5px 10px 3px;
        border-top-left-radius: 5px;
        border-top-right-radius: 5px;
        text-decoration: none; }
      .nav-visitor ul li.active a {
        padding: 8px 10px 3px;
        position: relative;
        color: #fff;
        background: var(--main-color); }
        .biz .nav-visitor ul li.active a {
          background: var(--biz-main-color); }

.logout-menu {
  border: 2px solid #256614;
  margin: 30px 0 0; }
  .biz .logout-menu {
    border: 2px solid #B0520B; }
  .logout-menu h2 {
    position: relative;
    margin: 20px 20px 0;
    font-size: 1.6rem;
    display: inline-block;
    line-height: 1.5;
    padding: 0 1rem;
    color: #256614;
    background: #fbf9f5; }
    .biz .logout-menu h2 {
      color: #B0520B;
      background: #e0ded9; }
    .logout-menu h2 .material-icons-outlined {
      vertical-align: middle;
      font-size: 1.6rem;
      margin: 0 1rem 0 0; }
  .logout-menu .inner {
    display: flex;
    align-items: center;
    padding: 0 20px 20px; }
    .logout-menu .inner p {
      margin: 0 10px;
      width: 40%; }
    .logout-menu .inner a {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 240px;
      font-weight: bold;
      margin: 0 10px;
      text-decoration: none;
      padding: 14px;
      text-align: center;
      border-radius: 35px;
      font-size: 1.6rem; }
      .logout-menu .inner a .material-icons-outlined {
        vertical-align: middle;
        margin: -0.2rem 1rem 0 0;
        border-radius: 45px;
        font-size: 1.9rem; }
      .logout-menu .inner a.login {
        color: #fff;
        background: #256614; }
        .biz .logout-menu .inner a.login.login {
          color: #fff;
          background: #256614; }
      .logout-menu .inner a.register {
        color: #141414;
        border: 1px solid #141414; }

@media (min-width: 1024px) {
  .news-list {
    display: flex;
    flex-wrap: wrap;
    margin: 30px -10px; }
    .news-list .news {
      width: 50%;
      background: #fff;
      border: 10px solid #fbf9f5;
      padding: 10px;
      display: flex; }
      .news-list .news .news-img {
        width: 160px; }
      .news-list .news .news-text {
        flex: 1;
        padding: 0 0 20px 20px;
        position: relative; }
        .news-list .news .news-text h3 {
          margin: 0 0 10px;
          font-size: 1.6rem; }
        .news-list .news .news-text .date {
          position: absolute;
          right: 0;
          bottom: 0;
          font-size: 1.4rem;
          color: #666666; } }

@media (max-width: 1023px) {
  .news-list {
    margin: 15px 0; }
    .news-list .news {
      background: #fff;
      padding: 10px;
      margin: 0 0 10px;
      display: flex; }
      .news-list .news .news-img {
        width: 120px; }
      .news-list .news .news-text {
        flex: 1;
        padding: 0 0 20px 20px;
        position: relative; }
        .news-list .news .news-text h3 {
          margin: 0 0 10px;
          font-size: 1.6rem; }
        .news-list .news .news-text .date {
          position: absolute;
          right: 0;
          bottom: 0;
          font-size: 1.4rem;
          color: #666666; } }

@media (min-width: 1024px) {
  .event-calendar {
    background-repeat: no-repeat;
    background-position: 50% 0;
    background-size: 100% auto;
    padding: 20px; }
    .event-calendar .event-calendar-wrap {
      float: right;
      padding: 0 0 57px; }
    .event-calendar .events {
      clear: both;
      background: #fff;
      border-radius: 5px; }
      .event-calendar .events .event {
        border-top: 1px solid #fbf9f5;
        padding: 25px 30px;
        display: flex;
        justify-content: space-between;
        align-items: center; }
        .event-calendar .events .event:first-child {
          border-top: none; }
        .event-calendar .events .event dl {
          margin: 0; }
          .event-calendar .events .event dl dt {
            color: #141414;
            font-weight: bold;
            margin: 0 0 10px; }
          .event-calendar .events .event dl dd {
            margin: 0;
            padding: 0;
            font-size: 1.4rem; }
            .event-calendar .events .event dl dd::after {
              content: "";
              clear: both;
              display: block; }
          .event-calendar .events .event dl .event-date {
            margin-right: 40px; }
        .event-calendar .events .event a.button {
          color: #fff;
          background: #256614;
          border-radius: 1.5rem;
          line-height: 3rem;
          text-decoration: none;
          font-size: 1.4rem;
          font-weight: bold;
          width: 154px;
          position: relative;
          text-align: center; }
          .event-calendar .events .event a.button .material-icons-outlined {
            position: absolute;
            right: 5px;
            top: 50%;
            font-size: 2rem;
            transform: translateY(-50%); } }

@media (max-width: 1023px) {
  .event-calendar {
    background-repeat: no-repeat;
    background-position: 50% 0;
    background-size: 100% auto;
    padding: 42% 20px 10px;
    margin: 0 -20px; }
    .event-calendar .event-calendar-wrap {
      padding: 0; }
    .event-calendar .events {
      clear: both;
      background: #fff;
      border-radius: 5px;
      margin: 10px 0 0; }
      .event-calendar .events .event {
        border-top: 1px solid #fbf9f5;
        padding: 30px; }
        .event-calendar .events .event:first-child {
          border-top: none; }
        .event-calendar .events .event dl {
          margin: 0 0 30px;
          font-size: 1.4rem;
          border-bottom: 1px solid #edebe2;
          padding-bottom: 30px; }
          .event-calendar .events .event dl:last-child {
            border-bottom: none;
            padding-bottom: 0;
            margin-bottom: 0; }
          .event-calendar .events .event dl dt {
            color: #141414;
            font-weight: bold;
            margin: 0 0 10px;
            font-size: 1.6rem; }
          .event-calendar .events .event dl dd {
            margin: 0;
            padding: 0; }
            .event-calendar .events .event dl dd::after {
              content: "";
              clear: both;
              display: block; }
        .event-calendar .events .event .event-date {
          display: block;
          margin: 3px 0; }
        .event-calendar .events .event a.button {
          display: block;
          color: #fff;
          background: #256614;
          border-radius: 2rem;
          line-height: 4rem;
          max-width: 21rem;
          text-decoration: none;
          font-size: 1.4rem;
          font-weight: bold;
          margin: 0 auto;
          text-align: center;
          position: relative; }
          .event-calendar .events .event a.button .material-icons-outlined {
            font-size: 2rem;
            position: absolute;
            right: 10px;
            top: 50%;
            transform: translateY(-50%); } }

@media (min-width: 1024px) {
  .chatroom {
    border: 2px solid #256614;
    margin: 50px 0; }
    .biz .chatroom {
      border: 2px solid #B0520B; }
    .chatroom h2 {
      color: #256614;
      position: relative;
      top: -1.1rem;
      margin: 0 20px;
      font-size: 1.6rem;
      display: inline-block;
      background: #fbf9f5;
      line-height: 1.5;
      padding: 0 1rem; }
      .biz .chatroom h2 {
        color: #B0520B;
        background: #e0ded9; }
      .chatroom h2 .material-icons-outlined {
        font-size: 2rem;
        vertical-align: middle;
        margin: 0 0.5rem 0 0; }
    .chatroom .messages {
      padding: 10px 38px 20px; }
      .chatroom .messages a {
        color: inherit; }
      .chatroom .messages .message-op {
        margin: 0 0 20px 95px;
        position: relative;
        padding: 15px 28px;
        border-radius: 8px;
        color: #fff;
        background: #256614;
        max-width: 560px; }
        .biz .chatroom .messages .message-op {
          color: #fff;
          background: #B0520B; }
        .chatroom .messages .message-op::before {
          content: "";
          display: block;
          width: 60px;
          height: 60px;
          background: url("/assets/img/style/icon-chat-op.png") no-repeat 50% 50%;
          position: absolute;
          left: -95px;
          top: 0;
          border-radius: 50%; }
        .chatroom .messages .message-op::after {
          content: "";
          display: block;
          border-right: 15px solid #256614;
          border-top: 7px solid transparent;
          border-bottom: 7px solid transparent;
          position: absolute;
          left: -15px;
          top: 50%;
          transform: translateY(-50%); }
          .biz .chatroom .messages .message-op::after {
            border-right: 15px solid #B0520B; }
      .chatroom .messages .message-you {
        margin: 0 15px 20px auto;
        position: relative;
        padding: 15px 28px;
        border-radius: 8px;
        color: #2b2b2b;
        background: #edebe2;
        max-width: 560px; }
        .biz .chatroom .messages .message-you {
          color: #2b2b2b;
          background: #bed4d2; }
        .chatroom .messages .message-you::before {
          content: "あなた";
          display: block;
          position: absolute;
          right: 0;
          bottom: -1.5rem;
          color: #666666;
          font-size: 1.4rem; }
        .chatroom .messages .message-you::after {
          content: "";
          display: block;
          border-left: 15px solid #edebe2;
          border-top: 7px solid transparent;
          border-bottom: 7px solid transparent;
          position: absolute;
          right: -15px;
          top: 50%;
          transform: translateY(-50%); }
          .biz .chatroom .messages .message-you::after {
            border-left-color: #bed4d2; }
    .chatroom .message-form {
      border-top: 2px solid #256614;
      display: flex; }
      .biz .chatroom .message-form {
        border-top: 2px solid #B0520B; }
      .chatroom .message-form input {
        flex: 1;
        display: block;
        border: none;
        padding: 14px 25px;
        border-radius: 0; }
      .chatroom .message-form .button {
        width: 98px;
        border: none;
        padding: 14px 5px;
        background: #256614;
        color: #fff;
        border-radius: 0; }
        .biz .chatroom .message-form .button {
          background: #B0520B; }
        .chatroom .message-form .button .material-icons-outlined {
          font-size: 1em;
          vertical-align: middle;
          margin: 0 0.5em 0 0; } }

@media (max-width: 1023px) {
  .chatroom {
    border: 2px solid #256614;
    margin: 25px -10px; }
    .biz .chatroom {
      border: 2px solid #B0520B; }
    .chatroom h2 {
      color: #256614;
      position: relative;
      top: -1.1rem;
      margin: 0 10px;
      font-size: 1.6rem;
      display: inline-block;
      background: #fbf9f5;
      line-height: 1.5;
      padding: 0 1rem; }
      .biz .chatroom h2 {
        color: #B0520B;
        background: #e0ded9; }
      .chatroom h2 .material-icons-outlined {
        font-size: 2rem;
        vertical-align: middle;
        margin: 0 0.5rem 0 0; }
    .chatroom .messages {
      padding: 5px 9px 10px; }
      .chatroom .messages a {
        color: inherit; }
      .chatroom .messages .message-op {
        margin: 0 0 25px 53px;
        position: relative;
        padding: 10px 15px;
        border-radius: 8px;
        max-width: 245px;
        color: #fff;
        background: #256614; }
        .biz .chatroom .messages .message-op {
          color: #fff;
          background: #B0520B; }
        .chatroom .messages .message-op::before {
          content: "";
          display: block;
          width: 40px;
          height: 40px;
          background: url("/assets/img/style/icon-chat-op.png") no-repeat 50% 50%;
          background-size: contain;
          position: absolute;
          left: -53px;
          top: 0;
          border-radius: 50%; }
        .chatroom .messages .message-op::after {
          content: "";
          display: block;
          border-right: 11px solid #256614;
          border-top: 5px solid transparent;
          border-bottom: 5px solid transparent;
          position: absolute;
          left: -10px;
          top: 20px;
          transform: translateY(-50%); }
          .biz .chatroom .messages .message-op::after {
            border-right: 11px solid #B0520B; }
      .chatroom .messages .message-you {
        margin: 0 15px 25px auto;
        position: relative;
        padding: 10px 15px;
        border-radius: 8px;
        color: #2b2b2b;
        background: #edebe2;
        max-width: 245px; }
        .biz .chatroom .messages .message-you {
          color: #2b2b2b;
          background: #bed4d2; }
        .chatroom .messages .message-you::before {
          content: "あなた";
          display: block;
          position: absolute;
          right: 0;
          bottom: -1.5rem;
          color: #666666;
          font-size: 1.4rem; }
        .chatroom .messages .message-you::after {
          content: "";
          display: block;
          border-left: 11px solid #edebe2;
          border-top: 5px solid transparent;
          border-bottom: 5px solid transparent;
          position: absolute;
          right: -10px;
          top: 20px;
          transform: translateY(-50%); }
    .chatroom .message-form {
      border-top: 2px solid #256614;
      display: flex; }
      .biz .chatroom .message-form {
        background: #B0520B; }
      .chatroom .message-form input {
        flex: 1;
        display: block;
        border: none;
        padding: 14px 25px;
        border-radius: 0; }
      .chatroom .message-form .button {
        width: 98px;
        border: none;
        padding: 14px 5px;
        background: #256614;
        color: #fff;
        border-radius: 0; }
        .biz .chatroom .message-form .button {
          background: #B0520B; }
        .chatroom .message-form .button .material-icons-outlined {
          font-size: 1em;
          vertical-align: middle;
          margin: 0 0.5em 0 0; } }

.banner-carousel-wrapper {
  padding: 20px 30px 50px;
  position: relative;
  border-radius: 10px; }
  .banner-carousel-wrapper .button-pause {
    position: absolute;
    bottom: 0;
    right: 0px;
    width: 30px;
    height: 30px;
    border-radius: 0;
    border: none;
    color: #2b2b2b;
    background: #fff;
    border-radius: 0 0 10px 0; }
    .banner-carousel-wrapper .button-pause::before {
      display: block;
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
      font-size: 1.7rem;
      font-family: "Material Icons";
      content: "\e037"; }
  .banner-carousel-wrapper.autoplay .button-pause::before {
    content: "\e034"; }
  .banner-carousel-wrapper .banner-carousel .slick-dots {
    position: absolute;
    bottom: -40px;
    list-style: none;
    display: block;
    text-align: center;
    padding: 0;
    margin: 0;
    width: 100%; }
    .banner-carousel-wrapper .banner-carousel .slick-dots li {
      position: relative;
      display: inline-block;
      height: 10px;
      width: 10px;
      margin: 0 8px;
      padding: 0; }
      .banner-carousel-wrapper .banner-carousel .slick-dots li button {
        border: 0;
        border: 2px solid #333;
        background: transparent;
        display: block;
        height: 10px;
        width: 10px;
        padding: 0;
        outline: none;
        color: transparent;
        cursor: pointer;
        border-radius: 50%; }
      .banner-carousel-wrapper .banner-carousel .slick-dots li.slick-active button {
        background: #333; }
  .banner-carousel-wrapper .banner-carousel .slick-arrow {
    position: absolute;
    top: 50%;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    border: none;
    color: #2b2b2b;
    background: #fff;
    transform: translateY(-50%);
    z-index: 6;
    text-indent: -9999px;
    border: 2px solid #141414; }
    .banner-carousel-wrapper .banner-carousel .slick-arrow.slick-prev {
      left: -25px; }
      .banner-carousel-wrapper .banner-carousel .slick-arrow.slick-prev::before {
        font-family: "Material Icons";
        content: "\e5c4";
        display: block;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        text-indent: 0;
        font-size: 2.6rem; }
    .banner-carousel-wrapper .banner-carousel .slick-arrow.slick-next {
      right: -25px; }
      .banner-carousel-wrapper .banner-carousel .slick-arrow.slick-next::before {
        font-family: "Material Icons";
        content: "\e5c8";
        display: block;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        text-indent: 0;
        font-size: 2.6rem; }
  .banner-carousel-wrapper .banner {
    padding: 0 2px; }

.section__subsection {
  padding: 10px 0 0;
  background-color: var(--color-bg2);
  border-radius: 0.5rem;
  margin-top: 30px; }
  .biz .section__subsection {
    background-color: var(--biz-color-bg2); }
  .section__subsection h3 {
    padding: 0;
    margin: 0;
    padding-inline: 10px;
    line-height: 1.4; }

@media (min-width: 1024px) {
  .banner-horizon ul {
    list-style: none;
    padding: 0;
    margin: 20px -10px;
    display: flex; }
    .banner-horizon ul li {
      margin: 0 0 20px;
      width: 33.33%;
      padding: 0 10px; }
      .banner-horizon ul li a {
        display: flex;
        align-items: center;
        font-size: 1.4rem;
        text-decoration: none;
        color: inherit;
        background: #fff; }
        .banner-horizon ul li a img {
          width: 80px; }
        .banner-horizon ul li a span {
          flex: 1;
          padding: 0 10px; } }

@media (max-width: 1023px) {
  .banner-horizon ul {
    list-style: none;
    padding: 0;
    margin: 20px -10px; }
    .banner-horizon ul li {
      max-width: 315px;
      margin: 0 auto 10px;
      padding: 0; }
      .banner-horizon ul li a {
        display: flex;
        align-items: center;
        font-size: 1.4rem;
        text-decoration: none;
        color: inherit;
        background: #fff; }
        .banner-horizon ul li a img {
          width: 70px; }
        .banner-horizon ul li a span {
          flex: 1;
          padding: 0 10px; } }

.related-sites {
  display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 10px; }

.search-bar__options__container {
  display: flex;
  max-width: 700px;
  margin-inline: auto;
  padding: 15px 0px; }
  .search-bar__options__container .material-symbols-outlined {
    font-size: 25px; }

.search-bar__options__drawer__container {
  position: relative;
  max-width: 650px;
  margin: 0 auto; }

.search-bar__section {
  padding: 10px 10px 0;
  background: var(--hero-bg);
  border-radius: 0 0 5px 5px; }
  .biz .search-bar__section {
    background: var(--biz-hero-bg); }

.search-bar__image {
  display: -ms-grid;
  display: grid;
  margin: auto;
  width: 100%;
  max-width: 700px;
  padding-top: 10px; }

.search-bar__title {
  font-weight: 700;
  font-size: 1.6rem;
  margin: 0 0 10px;
  line-height: 1.6;
  color: #141414; }
  .search-bar__title h2 {
    margin: 0; }

.search-bar__container {
  display: flex;
  align-items: center;
  margin: 0 auto;
  border-radius: 0.5rem;
  max-width: 1000px; }
  .search-bar__container .accordion-form-body {
    padding: 0 10px; }
  .service-filter__container .search-bar__container {
    max-width: unset;
    margin-bottom: 10px; }

.search-bar__input {
  flex: 1;
  padding: 0.5rem 1rem;
  border: 1px solid var(--color-bg2);
  border-radius: 0.5rem;
  color: #141414;
  height: 50px;
  border-radius: 40px 0 0 40px;
  padding-left: 20px; }
  .biz .search-bar__input {
    border: 1px solid var(--biz-color-bg2); }
  .search-bar__input:focus {
    border-color: var(--main-color);
    outline: none;
    box-shadow: 0 0 0 0.2rem rgba(var(--main-color), 0.25); }

.search-bar__button {
  padding: 5PX 15px 5px 10px;
  background: var(--main-color);
  color: #fff;
  border: none;
  border-radius: 0.5rem;
  font-size: 1.4rem;
  cursor: pointer;
  height: 50px;
  border-radius: 0 40px 40px 0; }
  .search-bar__button:hover {
    background-color: #163b0c; }
  .biz .search-bar__button {
    background: var(--biz-main-color); }

.search-bar__icon {
  margin-right: 0.5rem;
  font-size: 1.6rem;
  color: #757575; }

.search-bar__clear {
  margin-left: 0.5rem;
  color: #757575;
  cursor: pointer; }
  .search-bar__clear:hover {
    color: #5c5c5c; }

.home-link__list {
  display: flex;
  gap: 10px;
  flex-wrap: nowrap;
  overflow-x: auto;
  -ms-scroll-snap-type: x mandatory;
      scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  margin-inline: auto; }
  @media (max-width: 1023px) {
    .home-link__list {
      display: -ms-grid;
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(90px, 1fr)); } }

.home-link__item {
  padding: 0 5px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  font-size: 1.6rem; }

.home-link__image {
  display: block;
  width: 60px; }
  .home-link__image__container {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 60px;
    height: 60px;
    background-color: #f0f0f0;
    border-radius: 50%; }

.home-link__text {
  padding: 5px 0px;
  flex: 1;
  white-space: nowrap;
  font-size: 1.4rem; }

.home-card-link__list {
  display: flex;
  gap: 10px;
  flex-wrap: nowrap;
  overflow-x: auto;
  -ms-scroll-snap-type: x mandatory;
      scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  background: var(--color-bg2);
  padding: 10px 5px 0px;
  border-radius: 10px;
  margin-inline: auto; }
  .biz .home-card-link__list {
    background-color: var(--biz-color-bg2); }
  @media (max-width: 1023px) {
    .home-card-link__list {
      display: -ms-grid;
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(90px, 1fr)); } }

.home-card-link__item {
  padding: 0 5px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  font-size: 1.6rem; }

.home-card-link__image {
  display: block;
  width: 60px;
  height: 60px; }
  .home-card-link__image__container {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 60px;
    height: 60px;
    background-color: #fff;
    border-radius: 50%; }

.home-card-link__text {
  padding: 0;
  flex: 1;
  font-size: 1.4rem;
  white-space: nowrap; }

.home-banner__container {
  display: flex;
  justify-content: center;
  width: 100%;
  background: var(--hero-bg);
  border-radius: 5px 5px 0 0;
  padding: 10px; }
  .biz .home-banner__container {
    background: var(--biz-hero-bg); }
  .home-banner__container:hover {
    opacity: 1; }
  .header-drawer__form__scroll .home-banner__container {
    background: none; }
  .home-banner__container.--top-ban {
    background: var(--hero-bg); }
    .biz .home-banner__container.--top-ban {
      background: var(--biz-hero-bg); }

.home-banner--fix {
  position: fixed;
  bottom: 75px;
  z-index: 1000;
  background: none;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: 5px; }
  @media (min-width: 1024px) {
    .home-banner--fix {
      bottom: 0px;
      margin-inline: 0px; } }
  .home-banner--fix.--hide {
    display: none; }
  .biz .home-banner--fix {
    background: none; }

.home-banner__image {
  border-radius: 10px;
  width: 100%;
  max-width: 500px;
  margin-inline: auto;
  box-shadow: 2px 9px 7px rgba(0, 0, 0, 0.1); }
  .home-banner__image.--top {
    max-width: 1000px;
    box-shadow: none; }
  .home-banner__image.--large {
    max-width: unset; }

.home-banner__link:hover, .home-banner__link:focus {
  text-decoration: none;
  opacity: 1; }

.home-banner__close-button {
  position: absolute;
  top: 0;
  right: 0;
  border: none;
  text-align: center;
  display: flex !important;
  justify-content: center;
  align-items: center;
  width: 30px;
  height: 30px;
  margin-inline: auto;
  color: white;
  background: black;
  border-radius: 50%;
  cursor: pointer;
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.1); }

.home-link__list {
  display: flex;
  gap: 10px;
  flex-wrap: nowrap;
  overflow-x: auto;
  -ms-scroll-snap-type: x mandatory;
      scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  margin-inline: auto; }
  @media (max-width: 1023px) {
    .home-link__list {
      display: -ms-grid;
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(90px, 1fr)); } }

.home-link__item {
  padding: 0 5px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  font-size: 1.6rem; }

.home-link__image {
  display: block;
  width: 60px; }
  .home-link__image__container {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 60px;
    height: 60px;
    background-color: #f0f0f0;
    border-radius: 50%; }

.home-link__text {
  padding: 5px 0px;
  flex: 1;
  white-space: nowrap;
  font-size: 1.4rem; }

.home-card-link__list {
  display: flex;
  gap: 10px;
  flex-wrap: nowrap;
  overflow-x: auto;
  -ms-scroll-snap-type: x mandatory;
      scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  background: var(--color-bg2);
  padding: 10px 5px 0px;
  border-radius: 10px;
  margin-inline: auto; }
  .biz .home-card-link__list {
    background-color: var(--biz-color-bg2); }
  @media (max-width: 1023px) {
    .home-card-link__list {
      display: -ms-grid;
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(90px, 1fr)); } }

.home-card-link__item {
  padding: 0 5px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  font-size: 1.6rem; }

.home-card-link__image {
  display: block;
  width: 60px;
  height: 60px; }
  .home-card-link__image__container {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 60px;
    height: 60px;
    background-color: #fff;
    border-radius: 50%; }

.home-card-link__text {
  padding: 0;
  flex: 1;
  font-size: 1.4rem;
  white-space: nowrap; }

.home-banner__container {
  display: flex;
  justify-content: center;
  width: 100%;
  background: var(--hero-bg);
  border-radius: 5px 5px 0 0;
  padding: 10px; }
  .biz .home-banner__container {
    background: var(--biz-hero-bg); }
  .home-banner__container:hover {
    opacity: 1; }
  .header-drawer__form__scroll .home-banner__container {
    background: none; }
  .home-banner__container.--top-ban {
    background: var(--hero-bg); }
    .biz .home-banner__container.--top-ban {
      background: var(--biz-hero-bg); }

.home-banner--fix {
  position: fixed;
  bottom: 75px;
  z-index: 1000;
  background: none;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: 5px; }
  @media (min-width: 1024px) {
    .home-banner--fix {
      bottom: 0px;
      margin-inline: 0px; } }
  .home-banner--fix.--hide {
    display: none; }
  .biz .home-banner--fix {
    background: none; }

.home-banner__image {
  border-radius: 10px;
  width: 100%;
  max-width: 500px;
  margin-inline: auto;
  box-shadow: 2px 9px 7px rgba(0, 0, 0, 0.1); }
  .home-banner__image.--top {
    max-width: 1000px;
    box-shadow: none; }
  .home-banner__image.--large {
    max-width: unset; }

.home-banner__link:hover, .home-banner__link:focus {
  text-decoration: none;
  opacity: 1; }

.home-banner__close-button {
  position: absolute;
  top: 0;
  right: 0;
  border: none;
  text-align: center;
  display: flex !important;
  justify-content: center;
  align-items: center;
  width: 30px;
  height: 30px;
  margin-inline: auto;
  color: white;
  background: black;
  border-radius: 50%;
  cursor: pointer;
  box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.1); }

.home__button {
  background: #256614;
  color: #fff;
  padding: 10px 20px;
  border-radius: 25px;
  border: none;
  cursor: pointer;
  display: flex;
  justify-content: center;
  font-weight: 700;
  text-decoration: none; }
  .home__button__list {
    display: -ms-grid;
    display: grid;
    gap: 10px;
    -ms-grid-columns: (1fr)[1];
    grid-template-columns: repeat(1, 1fr); }
    @media (min-width: 500px) {
      .home__button__list {
        grid-template-columns: repeat(auto-fit, minmax(400px, 1fr)); } }

.about__hero {
  display: flex;
  justify-content: center;
  width: 100%;
  max-width: 600px;
  margin-inline: auto; }

.about__item__list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  gap: 1rem;
  margin: 2rem auto;
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr); }
  @media (min-width: 1024px) {
    .about__item__list {
      -ms-grid-columns: (1fr)[3];
      grid-template-columns: repeat(3, 1fr); } }
  .about__item__list.--logout {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
    margin-inline: auto; }

.about__item__container {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
  border-radius: 10px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  padding: 0 5px;
  transition: all 0.3s ease;
  cursor: pointer;
  text-decoration: none;
  background: var(--cat2);
  text-align: center;
  aspect-ratio: unset;
  max-height: 200px; }
  .about__item__container:hover {
    transform: scale(1.02);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); }
  .about__item__container p {
    line-height: 1.2; }
    @media (min-width: 992px) {
      .about__item__container p {
        font-size: 20px; } }
  .about__item__container.--item-0 {
    background: var(--sub-color); }
  .about__item__container.--item-1 {
    background: var(--cat1); }
  .about__item__container.--item-2 {
    background: var(--cat2); }
  .about__item__container.--item-3 {
    background: var(--cat3); }

.about__item__image {
  width: 100%;
  max-height: 130px; }
  .about__item__image__container {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%; }

.about__item__body {
  font-weight: 700;
  line-height: 1.4;
  display: flex;
  gap: 10px;
  align-items: center; }

.about__faq__container {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin: 2rem 0; }

.about__faq__item {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  padding: 1rem;
  border-radius: 8px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  background: #fff; }

.about__faq__question {
  font-size: 1.6rem;
  font-weight: bold; }

.about__faq__answer {
  font-size: 1.6rem; }

.service-filter__main-title {
  margin: 0 0 10px; }
  .service-filter__main-title__container {
    display: flex;
    gap: 10px;
    align-items: center;
    padding-top: 50px; }
    @media (min-width: 1024px) {
      .service-filter__main-title__container {
        padding-top: 0; } }
  .service-filter__main-title__icon {
    width: 30px;
    height: 30px; }
    @media (min-width: 1024px) {
      .service-filter__main-title__icon {
        width: 50px;
        height: 50px; } }

.service-filter__login__container {
  background: var(--color-bg2);
  border-radius: 5px;
  padding: 10px; }
  .biz .service-filter__login__container {
    background: var(--biz-color-bg2); }
  .service-filter__login__container small {
    line-height: 1; }
  .service-filter__login__container .main-button, .service-filter__login__container .sub-button {
    text-align: center;
    margin: 10px auto; }

.service-filter__login__title {
  color: var(--main-color);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4; }
  .biz .service-filter__login__title {
    background: var(--biz-main-color); }

.service-filter__login__body {
  margin: 0;
  padding: 0;
  padding-bottom: 10px; }

.service-filter__filter-button__container {
  display: flex;
  justify-content: space-between;
  padding-bottom: 10px; }

.service-filter__filter-button__button {
  background: none;
  border: none;
  display: flex;
  align-items: center;
  gap: 5px;
  border-radius: 25px;
  background: var(--main-color);
  color: #fff;
  cursor: pointer; }
  .biz .service-filter__filter-button__button {
    background: var(--biz-main-color); }
  .service-filter__filter-button__button.--close {
    border: none;
    background: none;
    color: var(--black); }
  .service-filter__filter-button__button span {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content; }
  .service-filter__filter-button__button .material-icons-outlined {
    font-size: 20px; }

.service-filter__filter-selection__container {
  display: flex;
  gap: 5px 10px;
  background: var(--color-bg2);
  color: var(--main-color);
  width: 100%;
  border-radius: 5px;
  padding: 5px;
  min-height: 34px;
  overflow-y: auto;
  max-height: 120px;
  flex-wrap: wrap; }
  .service-filter__filter-selection__container.--my-10 {
    margin-top: 10px;
    margin-bottom: 10px; }
  .biz .service-filter__filter-selection__container {
    background: var(--biz-color-bg2);
    color: var(--biz-main-color); }

.service-filter__filter-selection__item {
  background: #fff;
  border: 1px solid var(--main-color);
  border-radius: 5px;
  line-height: 1;
  padding: 3px 5px;
  white-space: nowrap; }
  .biz .service-filter__filter-selection__item {
    border-color: var(--biz-main-color); }

.service-filter__button-list {
  display: -ms-grid;
  display: grid;
  gap: 20px; }
  @media (min-width: 1024px) {
    .service-filter__button-list {
      -ms-grid-columns: (1fr)[2];
      grid-template-columns: repeat(2, 1fr); } }

.service-filter__button__wrapper {
  width: 100%;
  background: var(--main-color);
  color: #fff;
  display: flex;
  gap: 10px;
  justify-content: space-between;
  align-items: center;
  text-decoration: none;
  padding: 10px 20px;
  border-radius: 50px;
  font-weight: 700; }
  .biz .service-filter__button__wrapper {
    background: var(--biz-main-color); }

.service-filter__button__inner {
  display: flex;
  gap: 10px;
  align-items: center; }

.service-filter__modal__container {
  display: block;
  opacity: 1;
  position: fixed;
  padding: 10px;
  inset: 0;
  z-index: 4000;
  overflow: auto;
  max-height: 100vh;
  background: #00000033;
  transition: opacity 0.3s ease-out; }
  .service-filter__modal__container.--hidden {
    display: none;
    opacity: 0; }

.service-filter__modal__inner {
  position: fixed;
  padding: 20px;
  inset: 40px;
  border-radius: 10px;
  z-index: 4000;
  overflow: auto;
  max-height: 100vh;
  background: #fff; }
  @media (max-width: 1023px) {
    .service-filter__modal__inner {
      inset: 0 0 0 40px;
      border-radius: 0;
      transform: translateX(100%);
      transition: transform 0.3s ease-out; }
      .service-filter__modal__inner.--open {
        transform: translateX(0);
        transition: transform 0.3s ease-out; } }

.service-filter__modal__wrapper {
  max-width: 1200px;
  margin-inline: auto; }

.service-filter__category__container {
  display: flex;
  gap: 10px; }

.service-filter__category__item {
  color: var(--dark-gray);
  padding: 3px 5px;
  border: 1px solid var(--dark-gray);
  border-radius: 5px;
  font-size: 1.4rem;
  line-height: 1.3; }
  @media (max-width: 1023px) {
    .service-filter__category__item {
      margin-bottom: 10px; } }
  .service-filter__category__item.--color {
    color: var(--main-color);
    border: 1px solid var(--main-color); }
    .biz .service-filter__category__item.--color {
      color: var(--biz-main-color);
      border: 1px solid var(--biz-main-color); }

.service-filter__result__container {
  display: -ms-grid;
  display: grid;
  gap: 10px; }
  .service-filter__result__container .task-text__accordion__button {
    margin: 0; }

.service-filter__result__options {
  display: flex;
  gap: 10px;
  align-items: center; }

.service-filter__result__list {
  display: -ms-grid;
  display: grid;
  gap: 10px; }

.service-filter__result__item {
  padding: 5px 20px;
  margin: 0;
  text-decoration: none;
  border-radius: 5px;
  position: relative;
  background: #fff;
  display: -ms-grid;
  display: grid; }

.service-filter__result__header {
  display: -ms-grid;
  display: grid;
  gap: 10px;
  -ms-grid-columns: 1fr auto;
  grid-template-columns: 1fr auto;
  align-items: baseline;
  border-bottom: 1px solid #d8d8d8;
  margin: 0 0 10px; }

.service-filter__result__title {
  margin: 0;
  padding: 0;
  min-height: 3rem;
  line-height: 1.3;
  color: #141414;
  position: relative;
  font-weight: bold;
  font-size: 1.6rem; }
  .service-filter__result__title:before {
    content: "";
    background: var(--main-color);
    display: block;
    width: 5px;
    top: 0;
    bottom: 0;
    left: -20px;
    position: absolute; }
    .biz .service-filter__result__title:before {
      background: var(--biz-main-color); }

.service-filter__result__body p {
  margin: 0 0 5px;
  padding: 0;
  line-height: 1.4; }

.service-filter__link-list {
  display: -ms-grid;
  display: grid;
  gap: 20px;
  align-items: flex-end; }
  @media (min-width: 1024px) {
    .service-filter__link-list.--links-2 {
      -ms-grid-columns: (1fr)[2];
      grid-template-columns: repeat(2, 1fr); } }
  @media (min-width: 1024px) {
    .service-filter__link-list.--links-3 {
      -ms-grid-columns: (1fr)[3];
      grid-template-columns: repeat(3, 1fr); } }

@media (min-width: 1024px) {
  .service-filter__link__container p {
    margin: 0;
    margin-bottom: 10px; } }

.service-filter__link__wrapper {
  width: 100%;
  color: var(--main-color);
  display: flex;
  gap: 10px;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  padding: 10px 20px;
  border: 1px solid var(--main-color);
  border-radius: 5px;
  font-weight: 700;
  box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.2);
  transition: all 0.2s ease-out; }
  .biz .service-filter__link__wrapper {
    border: 1px solid var(--biz-main-color);
    color: var(--biz-main-color); }
  .service-filter__link__wrapper:hover {
    box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.1); }

.service-filter__link__text {
  padding-top: 10px;
  font-weight: 700; }
  @media (min-width: 1024px) {
    .service-filter__link__text {
      padding-top: 0; } }

.service-filter__link__inner {
  display: flex;
  gap: 10px;
  flex-direction: column;
  align-items: center;
  font-size: 18px; }
  .service-filter__link__inner .material-icons-outlined {
    font-size: 50px; }

.service-filter__related-links {
  padding-left: 10px; }
  .service-filter__related-links a {
    text-decoration: none;
    position: relative; }
    .service-filter__related-links a::before {
      content: "";
      width: 5px;
      height: 100%;
      background: var(--main-color);
      position: absolute;
      top: 3px;
      left: -10px; }
      .biz .service-filter__related-links a::before {
        background: var(--biz-main-color); }
  .service-filter__related-links__title {
    text-decoration: underline; }
  .service-filter__related-links__description {
    font-weight: 700;
    line-height: 1.2; }

.service-filter__accordion__text-body {
  line-height: 1.4; }

.service-filter__accordion__message {
  margin: 0 0 10px;
  line-height: 1.4; }

.service-filter__accordion__section {
  background: #fff;
  border-radius: 5px;
  padding: 0px;
  display: -ms-grid;
  display: grid;
  gap: 10px; }

.service-filter__accordion__section-1 {
  border-bottom: 2px solid var(--color-bg2);
  padding-bottom: 10px;
  margin-bottom: 10px; }
  .service-filter__accordion__section-1.--hidden-section {
    display: none; }
    .service-filter__accordion__section-1.--hidden-section.--open {
      display: block; }
  .service-filter__accordion__section-1:last-child {
    border-bottom: none;
    padding-bottom: 0;
    margin-bottom: 0; }

.service-filter__accordion__actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 20px; }
  .service-filter__container .service-filter__accordion__actions {
    padding-top: 0; }
  .service-filter__accordion__actions .link-button {
    font-size: 1.4rem; }
  .header-drawer__form .service-filter__accordion__actions {
    padding-bottom: 20px; }

.service-filter__accordion__optional-section {
  display: block;
  justify-content: space-between;
  max-width: 350px;
  gap: 10px;
  align-items: center;
  max-height: 2000px;
  border-bottom: 10px;
  opacity: 1; }
  .service-filter__accordion__optional-section__list {
    display: -ms-grid;
    display: grid;
    gap: 30px; }
  .service-filter__accordion__optional-section.--hidden-accordion-section + .service-filter__accordion__section {
    max-height: 0;
    overflow-y: hidden;
    opacity: 0;
    display: none; }

.service-filter__accordion__title-1 {
  font-size: 18px;
  font-weight: 700;
  padding: 10px 0 10px 15px;
  line-height: 1.4;
  position: relative; }
  @media (min-width: 1024px) {
    .service-filter__accordion__title-1 {
      font-size: 20px; } }
  .service-filter__accordion__title-1::before {
    content: "";
    width: 5px;
    height: 50%;
    background: var(--main-color);
    position: absolute;
    left: 0px;
    top: 50%;
    transform: translateY(-50%); }
    .biz .service-filter__accordion__title-1::before {
      background: var(--biz-main-color); }

.service-filter__accordion__title-2 {
  font-size: 1.6rem;
  font-weight: 700;
  padding: 10px 0;
  line-height: 1.2;
  display: flex;
  align-items: center; }
  @media (min-width: 1024px) {
    .service-filter__accordion__title-2 {
      font-size: 18px; } }

.service-filter__accordion__title-3 {
  font-size: 1.4rem;
  font-weight: 700;
  padding: 0;
  line-height: 1.2;
  display: flex;
  align-items: center; }
  @media (min-width: 1024px) {
    .service-filter__accordion__title-3 {
      font-size: 1.6rem; } }

.service-filter__optional-section__container.--hidden-optional-section {
  display: none; }

.service-filter__require {
  color: #fff;
  background: var(--main-color);
  padding: 5px 10px;
  margin-right: 10px;
  border-radius: 2px;
  font-weight: 700;
  min-width: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap; }
  .biz .service-filter__require {
    background: var(--biz-main-color); }

.button-checkbox__container {
  display: flex;
  gap: 20px;
  flex-direction: column; }

.button-checkbox__wrapper {
  gap: 10px;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  padding: 10px 0; }
  .button-checkbox__wrapper.--checkbox-grid {
    display: -ms-grid;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); }
    @media (max-width: 500px) {
      .button-checkbox__wrapper.--checkbox-grid {
        -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr); } }

.button-checkbox__input {
  position: absolute;
  visibility: hidden;
  opacity: 0;
  flex-grow: 1;
  min-width: 100%; }

.button-checkbox__label {
  color: #141414;
  background: #fff;
  border: 1px solid var(--main-color);
  border-radius: 5px;
  padding: 10px;
  min-height: 48px;
  min-width: 48px;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.6rem;
  line-height: 1.2; }
  .biz .button-checkbox__label {
    border: 1px solid var(--biz-main-color); }
  .button-checkbox__label:has(input:checked) {
    color: #fff;
    background: var(--main-color);
    font-weight: 700; }
    .biz .button-checkbox__label:has(input:checked) {
      background: var(--biz-main-color); }

.button-radio-switch__container {
  display: flex;
  gap: 20px;
  flex-direction: column; }

.button-radio-switch__wrapper {
  display: flex;
  gap: 0px;
  max-height: 48px;
  white-space: nowrap; }

.button-radio-switch__input {
  position: absolute;
  visibility: hidden;
  opacity: 0; }

.button-radio-switch__label {
  color: #141414;
  background: #fff;
  border: 1px solid var(--main-color);
  border-radius: 5px;
  padding: 5px 10px; }
  .biz .button-radio-switch__label {
    border: 1px solid var(--biz-main-color); }
  .button-radio-switch__label:first-child {
    border-radius: 5px 0 0 5px; }
  .button-radio-switch__label:last-child {
    border-radius: 0 5px 5px 0; }
  .button-radio-switch__label:has(input:checked) {
    color: #fff;
    background: var(--main-color);
    font-weight: 700; }
    .biz .button-radio-switch__label:has(input:checked) {
      background: var(--biz-main-color); }

.button-radio__container {
  display: flex;
  gap: 20px;
  flex-direction: column; }

.button-radio__wrapper {
  display: -ms-grid;
  display: grid;
  gap: 0px 20px;
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr); }
  @media (min-width: 1024px) {
    .button-radio__wrapper {
      grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); } }
  .button-radio__wrapper.--radio-column {
    flex-direction: column; }

.button-radio__input {
  position: absolute;
  visibility: hidden;
  opacity: 0; }

.button-radio__label {
  padding: 10px 0;
  min-width: 100px;
  display: flex;
  align-items: center;
  font-size: 1.6rem;
  line-height: 1.2;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content; }
  .button-radio__label::before {
    content: "";
    width: 30px;
    height: 30px;
    min-width: 30px;
    border-radius: 50%;
    border: 2px solid var(--main-color);
    margin-right: 10px; }
    .biz .button-radio__label::before {
      border: 2px solid var(--biz-main-color); }
  .button-radio__label:has(input:checked) {
    font-weight: 700; }
    .button-radio__label:has(input:checked)::before {
      background: var(--main-color); }
      .biz .button-radio__label:has(input:checked)::before {
        background: var(--biz-main-color); }

.date-selector__container {
  display: flex;
  flex-wrap: wrap;
  gap: 5px; }
  .date-selector__container input, .date-selector__container select {
    font-size: 1.6rem; }
  .date-selector__container .mark {
    padding-inline: 5px; }

.select-box__container {
  max-width: 100px; }
  .select-box__container select {
    font-size: 1.6rem; }

.service-filter-age__input {
  width: 80px;
  font-size: 1.6rem; }

.label--horizontal {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
  padding: 10px 0; }

.service-filter__back-button {
  font-size: 1.4rem;
  display: flex;
  gap: 5px;
  justify-content: center;
  align-items: center;
  text-decoration: none; }
  .service-filter__back-button__label {
    text-decoration: underline; }

.service-filter__main-title__container img {
  width: 30px;
  height: 30px;
  margin-top: -10px; }
  @media (min-width: 1024px) {
    .service-filter__main-title__container img {
      width: 50px;
      height: 50px;
      margin-top: 0; } }

.task-service__index__container {
  background: var(--color-bg2);
  padding: 2rem 3rem 1rem;
  border-radius: 0.5rem; }
  .biz .task-service__index__container {
    background: var(--biz-color-bg2); }

.task-service__index__title {
  padding: 0 0 1rem;
  margin: 0 0 1.5rem;
  border-bottom: 1px solid var(--main-color);
  font-weight: 700;
  font-size: 2.2rem; }

.task-service__index__list {
  padding-left: 0 !important;
  list-style: none;
  display: -ms-grid;
  display: grid;
  gap: 10px; }
  .task-service__index__list__item {
    display: flex;
    gap: 10px; }
  .task-service__index__list__label {
    color: #141414;
    background: var(--main-color);
    padding: 1px 5px;
    border-radius: 5px; }
    .biz .task-service__index__list__label {
      background: var(--biz-main-color); }
    .task-service__index__list__label.--cat-1 {
      background: var(--task-cat-1); }
    .task-service__index__list__label.--cat-2 {
      background: var(--task-cat-2); }
    .task-service__index__list__label.--cat-3 {
      background: var(--task-cat-3); }
    .task-service__index__list__label.--cat-4 {
      background: var(--task-cat-4); }

.task-service__index__body {
  line-height: 1.4;
  margin-bottom: 1rem; }
  .task-service__index__body ul.no-mark {
    list-style: none;
    margin: 0;
    padding: 0; }

.task-service__procedure__list {
  display: -ms-grid;
  display: grid;
  gap: 20px; }

.task-service__procedure__container {
  background: var(--color-bg2);
  padding: 2rem 3rem 1rem;
  border-radius: 0.5rem;
  scroll-margin-top: 70px; }
  .biz .task-service__procedure__container {
    background: var(--biz-color-bg2); }

.task-service__procedure__title {
  padding: 0 0 1rem;
  margin: 0 0 1.5rem;
  border-bottom: 1px solid var(--main-color);
  font-weight: 700;
  font-size: 2.2rem; }

.task-service__procedure__body {
  line-height: 1.4;
  margin-bottom: 1rem; }
  .task-service__procedure__body ul.no-mark {
    list-style: none;
    margin: 0;
    padding: 0; }

.task-service__accordion .form-element-clickable input[type="checkbox"] + label {
  border: none;
  padding: 0; }

@media (min-width: 1024px) {
  .pc-2col {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
    gap: 20px; } }

.sheet-form-action--center {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  margin-top: 20px; }

@media (min-width: 1024px) {
  .page-input h3 {
    padding: 0.5em;
    background: aliceblue;
    box-shadow: 0 0 4px rgba(0, 0, 0, 0.23);
    font-size: 1.4rem;
    white-space: pre-wrap; }
  .page-input .sheet-form dl.horizon > dt {
    padding: 30px 0 8px;
    margin-right: 15px;
    width: 20%; }
  .page-input .sheet-form dl.horizon > dd {
    margin-right: 10px;
    width: 70%; }
  .page-input .sheet-form dl.horizon > dd.textarea-input {
    margin-top: 30px; }
  .page-input .sheet-form-actions .button {
    padding: 10px 30px; }
  .page-input .sheet-form dl.horizon > div > div > dt {
    width: 20%;
    margin: 0 0 20px;
    padding: 30px 0 8px;
    position: relative;
    font-weight: bold; }
  .page-input .sheet-form dl.horizon > div > div > dd {
    width: 70%;
    margin-right: 10px; }
  .page-input .sheet-form dl.horizon > div > div.horizon {
    display: flex;
    flex-wrap: wrap; }
  .page-view h2 {
    font-family: sans-serif;
    font-weight: bold; }
  .page-view .sheet-form dl.horizon > div > div > dt {
    width: 220px;
    margin: 0;
    padding: 15px 0;
    position: relative;
    font-weight: bold;
    font-size: 1.6rem; }
  .page-view .sheet-form dl.horizon > div > div > dd {
    width: calc(100% - 220px);
    padding: 15px 0;
    margin: 0; }
  .page-view .sheet-form dl.horizon > div > div.horizon {
    display: flex;
    flex-wrap: wrap; } }

.fc-time-grid-event .fc-time {
  font-size: 1.4rem !important; }

.fc-content > .fc-title {
  font-size: 1.4rem !important; }

.text-xl {
  font-size: 24px;
}
.text-lg {
  font-size: 22px;
}
.text-base {
  font-size: 16px;
}
.text-sm {
  font-size: 14px;
}

@media (min-width: 1023px) {
  .text-xl {
    font-size: 31px;
  }
  .text-lg {
    font-size: 24px;
  }
}

.font-light {
  font-weight: 300;
}
.font-normal {
  font-weight: 400;
}
.font-medium {
  font-weight: 500;
}
.font-semibold {
  font-weight: 600;
}
.font-bold {
  font-weight: 700;
}

:root {
  --badge-bg-color: #c10000;
  --badge-color: white;
}
.biz {
  --badge-bg-color: yellow;
  --badge-color: black;
  --main-color: var(--biz-main-color);
  --bg-color: var(--biz-bg-color);
  --color-bg2: var(--biz-color-bg2);
  --hero-bg: var(--biz-hero-bg);
}

/*# sourceMappingURL=style.css.map*/

.line-clamp {
  display: -webkit-box;
  -webkit-line-clamp: var(--line-clamp, 2);
  line-clamp: var(--line-clamp, 2);
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.sheet-form-actions a {
  text-decoration: underline;
  cursor: pointer;
}

.tab-sort__container {
  --line-clamp: 2;
  display: grid;
  grid-template-columns: minmax(200px, 1fr) 200px;
  align-items: center;
}
.tab-sort__container .tab-sort__tab {
  display: flex;
  height: 100%;
  justify-content: center;
  align-items: center;
}
@media (max-width: 767px) {
  .tab-sort__container {
    --line-clamp: 1;
    grid-template-columns: repeat(2, 1fr);
    /** モバイルの場合、「XX様」と「千代田区」タブが全幅を占めさせることで、件数表示の縦方向位置を固定する */
    max-width: unset;
    clear: right;
  }
}

.account-box__button {
  padding: 0 8px 0 0;
}
@media (max-width: 767px) {
  .home-carousel-wrapper-acc-mng-def .home-carousel {
    --arrow-offset: -35px
  }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-prev {
    left: var(--arrow-offset);
  }
  .home-carousel-wrapper-acc-mng-def .home-carousel .slick-arrow.slick-next {
    right: var(--arrow-offset);
  }
}

@media (min-width: 1024px) {
  .task-list__item.--application.--application .task-list__text{
    grid-template-columns: repeat(2, 160px) 1fr;
    gap: 0 15px;
  }
}

/** 新着情報の詳細文に埋め込まれた画像 */
.about-page .task-detail.new-arrival .task-info img {
  display: block;
  margin: 0 auto;
  max-width: min(600px, 80vw);
}

.text-wrap {
  white-space: normal; /** 改行許容 */
  word-break: keep-all; /** できる限り日本語を区切りしない */
  overflow-wrap: anywhere; /** overflowの場合、日本語区切りを許容 */
}

.hide-visually {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

select:disabled,
input:disabled,
textarea:disabled {
  background-color: var(--light-gray);
  opacity: 1;
  color: #404040;
  font-size: 14px;
}
