@charset "UTF-8";
:root {
  --width-dialog: 300px;
  --width-min: 350px;
  --width-max: 1200px;
  --width-max-m: 1000px;
  --width-max-s: 800px;
  --width-content-min: 250px;
  --width-content-max: 400px;
  --width-input-s: 10em;
  --width-input-ss: 5em;
  --width-userList: 8em;
  --font-sansSerif: 'Inter', 'Noto Sans JP', 'Yu Gothic', 'YuGothic', 'Meiryo';
  --font-monospace: Consolas, Menlo, Courier, Inter, Noto Sans JP, Yu Gothic;
  --img-path: /image/;
  --color-gray: #999999;
  --color-gray-light: #F2F2F2;
  --color-gray-dark: #262626;
  --color-black: #0D0D0D;
  --color-ok: #102c57;
  --color-ng: salmon;
  --color-notice: salmon;
  --color-main: #102c57;
  --color-main-on: white;
  --color-sub: #dac0a3;
  --color-sub-on: #102c57;
  --color-base: white;
  --color-inputBg: #FCFCFC;
  --color-a: var(--color-main);
  --color-border-gray: rgba(153, 153, 153, 0.5);
  --color-border-ok: rgba(16, 44, 87, 0.5);
  --color-border-ng: rgba(250, 128, 114, 0.5);
  --color-border-main: rgba(16, 44, 87, 0.5);
  --color-border-sub: rgba(218, 192, 163, 0.5);
  --color-shadow-gray: rgba(153, 153, 153, 0.5);
  --initial-color: #262626;
  --initial-bgColor: #FAFAFA;
  --initial-fontSize: 16px;
  --initial-formFontSize: 16px;
  --radius-s: 4px;
  --radius-m: 8px;
  --radius-l: 16px;
  --radius-x: 1.5em;
  --input-height: 2.5em;
  --zLayout-pc-1: '_a  _a  _a  _a  _a' min-content;
  --zLayout-pc-2: '_b  _b  _b  _b  _b' min-content;
  --zLayout-pc-3: '_c  _d  _d  _d  _i' min-content;
  --zLayout-pc-4: '_c  _e  _f  _g  _i' auto;
  --zLayout-pc-5: '_c  _h  _h  _h  _i' min-content;
  --zLayout-pc-6: '_j  _j  _j  _j  _j' min-content;
  --zLayout-pc-7: '_k  _k  _k  _k  _k' min-content;
  --zLayout-pc-colmuns: min-content min-content 1fr min-content min-content;
  --zLayout-sp-1: '_a' min-content;
  --zLayout-sp-2: '_b' min-content;
  --zLayout-sp-3: '_c' min-content;
  --zLayout-sp-4: '_d' min-content;
  --zLayout-sp-5: '_f' auto;
  --zLayout-sp-6: '_e' min-content;
  --zLayout-sp-7: '_g' min-content;
  --zLayout-sp-8: '_h' min-content;
  --zLayout-sp-9: '_i' min-content;
  --zLayout-sp-10: '_j' min-content;
  --zLayout-sp-11: '_k' min-content;
  /* be adjust */
  --siteHeaderHeight: 50px /* ! adjust by js */;
  --stickyPageTop: var(--siteHeaderHeight) /* ! change by js */;
  --animationMoveUp: 5vh;
  --foldContentMaxH: 200px;
  --foldOverlay: linear-gradient(to bottom, rgba(250, 250, 250, 0) 0%, var(--initial-bgColor) 100%), -webkit-linear-gradient(top, rgba(250, 250, 250, 0) 0%, var(--initial-bgColor) 100%);
  --breadcrumbMaxLength: 20em;
}

/* font */
/* animation */
@keyframes example {
  from {
    transform: 0 0;
  }
  to {
    transform: 1 1;
  }
}
/* common */
:where(img):not(:where(.gm-style, ._ck, ._encapsulate) *) {
  object-fit: cover;
}

/* _ */
.pj-myMenu {
  margin: 5vh 0;
}

.pj-myMenu:not(:last-of-type) {
  border-bottom: 1px solid white;
}

.pj-myMenu h3 {
  margin-bottom: 1em;
}

.pj-myMenu div {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 1em;
}

@media (min-width: 500px) {
  .pj-myMenu div {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 700px) {
  .pj-myMenu div {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 900px) {
  .pj-myMenu div {
    grid-template-columns: repeat(4, 1fr);
  }
}
.pj-myMenu a {
  display: inline-block;
  font-weight: bold;
  color: var(--color-main);
  background-color: white;
  border: 2px solid var(--color-main);
  border-radius: 2em;
  padding: 1em 2em;
}

.pj-myMenu a:hover {
  color: var(--color-main-on);
  background-color: var(--color-main);
  opacity: 1;
}

.pj-caseList li {
  margin-bottom: 2em;
}

.pj-caseType {
  display: inline-block;
  font-size: 0.9em;
  font-weight: bold;
  border-radius: var(--radius-s);
  padding: 0.25em 1.5em;
}

.pj-caseType.typeA2 {
  color: var(--color-main-on);
  background-color: var(--color-main);
}

.pj-caseType.typeA3 {
  color: var(--color-sub-on);
  background-color: var(--color-sub);
}

.g {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
}

._none {
  display: none;
}

._container {
  container: _container/inline-size;
  position: relative;
}

._subgrid {
  display: grid;
  grid-template-columns: subgrid;
  grid-template-rows: subgrid;
}

._subgrid.entire {
  grid-column: 1/-1;
  grid-row: 1/-1;
}

._flex {
  display: -webkit-flex;
  -webkit-align-items: baseline;
  display: flex;
  align-items: baseline;
  gap: 0.5em;
}

._flex:not(.nowrap) {
  flex-wrap: wrap;
}

._noImage {
  object-fit: contain;
}

._ck:is(._conf *) {
  padding: 0 1em;
}

._ck :where(video, iframe, img) {
  max-width: 100%;
  padding: 1em;
}

._ck .u-validation {
  padding: 0;
}

._ck .u-validation > li {
  list-style-type: none;
}

._ck figure:first-child {
  margin-top: 0;
}

/* js */
.js-dialogOpener {
  cursor: pointer;
  position: relative;
}

.js-dialogOpener::after {
  font-family: "FontAwesome solid";
  content: "\f00e";
  vertical-align: baseline;
  font-size: 1em;
  color: var(--color-main);
  line-height: 1;
  position: absolute;
  top: 0.5em;
  right: 0.5em;
}

.js_favorite[class] {
  font-size: 0;
  background-color: transparent;
  border: none;
}

.js_favorite[class][data-status=done] {
  color: hotpink;
}

.js_favorite[class][data-status=yet] {
  color: gray;
}

.js_favorite[class]::before {
  font-family: "FontAwesome solid";
  content: "\f004";
  vertical-align: baseline;
  font-size: 2rem;
}

.swiper-button-prev {
  color: var(--color-main);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
}

.swiper-button-next {
  color: var(--color-main);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
}

.swiper-button-next.u {
  height: auto;
  background-color: rgba(250, 250, 250, 0.9);
  margin-top: 0;
  top: 0;
  right: 0;
  bottom: 0;
}

.swiper-button-next.u::after {
  font-family: "FontAwesome solid";
  content: "\f178";
  vertical-align: baseline;
  font-size: 1em;
  animation-name: swipeRight;
  animation-duration: 3s;
  animation-delay: 1s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-fill-mode: both;
}

.swiper-button-disabled {
  display: none;
}

.swiper-pagination {
  position: static;
}

.swiper-pagination:is(.swiper-wrapper ~ *) {
  margin-top: 1em;
}

.swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}

.swiper-pagination-bullet-active {
  background-color: var(--color-main);
}

.swiper-slide:has(.u-contentType:not(.image)) {
  display: grid;
  -webkit-place-items: center;
  place-items: center;
  height: auto;
}

.swiper-slide .image {
  width: 100%;
}

.swiper-thumbs {
  margin-top: 1em;
}

.swiper-thumbs .swiper-slide {
  cursor: pointer;
}

.ck-content {
  min-height: 15em;
  resize: block;
}

.ck-word-count {
  font-size: 0.8em;
  margin-top: 0.5em;
}

._universalMediadata:is(.swiper-slide *) {
  display: block;
  height: 100%;
}

/* form */
.f-btn {
  background-color: transparent;
  border: none;
}

.f-btn.delete::before {
  font-family: "FontAwesome solid";
  content: "\f057";
  vertical-align: baseline;
}

.f-choice [type=radio] {
  vertical-align: middle;
  margin-right: 0.25em;
}

.f-date {
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.5em 0.25em;
}

.f-date :has(+ button) {
  margin-right: 0.5em;
}

.f-date button {
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
}

.f-datetime {
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 0.5em;
}

.f-datetime .f-date {
  display: contents;
}

.f-datetime div[id] {
  display: -webkit-flex;
  -webkit-align-items: baseline;
  display: flex;
  align-items: baseline;
  gap: 0.5em 0.25em;
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
}

.f-datetime select {
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
  width: 100%;
}

.f-datetime select[name*=year] {
  min-width: 5em;
}

.f-upload {
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-align-items: center;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5em;
  border: 1px dashed rgba(153, 153, 153, 0.5);
  border-radius: var(--radius-m);
  cursor: pointer;
  padding: 1em;
}

.f-upload:hover {
  background-color: rgba(153, 153, 153, 0.1);
}

.f-upload:hover span::before {
  top: -2px;
}

.f-upload:has(.u-contentType) i {
  display: none;
}

.f-upload:not(:last-of-type) {
  margin-bottom: 1em;
}

.f-upload i::before {
  font-family: "FontAwesome solid";
  content: "\f0ee";
  vertical-align: baseline;
  margin-right: 0.5em;
  transition: 0.2s;
}

.f-upload div[id] {
  display: contents;
}

.f-upload [src*=loading] {
  width: 3rem;
}

/* util */
a.u {
  display: inline-block;
  color: var(--color-a);
  text-decoration: underline;
}

fieldset.u:is(.u-form *):has(+ .u) {
  margin-bottom: 0;
}

fieldset.u .u-validation {
  padding: 0.5em 1em;
  padding-top: 0;
}

fieldset.u textarea {
  min-height: 10em;
  border: none;
  resize: block;
}

fieldset.u :where([type=text], [type=password], [type=email], [type=number], [type=search], [type=tel]) {
  width: 100%;
}

h1.u {
  font-size: 2em;
  margin-bottom: 1em;
}

h2.u {
  font-size: 1.75em;
  margin-bottom: 1em;
}

h2.u span {
  font-size: 0.8em;
  font-weight: normal;
  margin-left: 1em;
}

h3.u {
  font-size: 1.5em;
  margin-bottom: 0.75em;
}

h4.u {
  font-size: 1.25em;
  margin-bottom: 0.5em;
}

header.u {
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-align-items: center;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5em 1em;
}

header.u:has(h1.u) {
  margin-bottom: 1.75em;
}

header.u:has(h2.u) {
  margin-bottom: 1.5em;
}

header.u:has(h3.u) {
  margin-bottom: 0.9375em;
}

header.u:has(h4.u) {
  margin-bottom: 0.825em;
}

header.u :where(h2.u, h3.u, h4.u) {
  margin-bottom: 0;
}

header.u .u-btn {
  font-size: 0.8em;
}

header.u :where(.switch, .more, .add, .edit) {
  font-weight: bold;
  font-size: 0.9em;
}

header.u :where(.switch, .add, .edit)::before {
  font-family: "FontAwesome solid";
  vertical-align: baseline;
  margin-right: 0.35em;
  color: var(--color-main);
}

header.u :where(.more, .add, .edit) {
  margin-left: auto;
}

header.u .switch::before {
  content: "\f0ec";
}

header.u .add::before {
  content: "\f055";
}

header.u .edit::before {
  content: "\f304";
}

header.u .more::after {
  font-family: "FontAwesome solid";
  content: "\f08e";
  vertical-align: baseline;
  margin-left: 0.35em;
}

p.u a {
  color: var(--color-a);
  padding: 0 0.25em;
}

p.u a[target=_blank]::after {
  font-family: "FontAwesome solid";
  content: "\f08e";
  vertical-align: baseline;
  margin-left: 0.25em;
}

table.u {
  /* has this _container by js */
  width: 100%;
  font-size: 0.9em;
  border-collapse: collapse;
}

@container _container (min-width: 501px) {
  table.u.col {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(0, auto));
  }
}
@container _container (min-width: 501px) {
  table.u.col :where(thead, thead tr, tbody, tbody tr) {
    display: grid;
    grid-template-columns: subgrid;
    grid-column: 1/-1;
  }
}
table.u.col thead {
  background-color: var(--initial-bgColor);
  border-bottom: 1px solid var(--color-border-gray);
  margin-bottom: 1em;
  position: sticky;
  top: var(--stickyPageTop);
  z-index: 1;
}

@container _container (max-width: 500px) {
  table.u.col thead {
    display: none;
  }
}
table.u.col th {
  -webkit-align-self: end;
  align-self: end;
  text-align: center;
  padding: 0.5em;
}

table.u.col th .label {
  font-weight: normal;
  font-size: 0.8em;
}

table.u.col th span {
  display: block;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
}

@container _container (max-width: 500px) {
  table.u.col tbody tr {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
    gap: 0 1em;
    background-color: var(--color-base);
    padding: 1em;
    margin-bottom: 2em;
  }
}
@container _container (min-width: 501px) {
  table.u.col tbody tr {
    margin-bottom: 1em;
    grid-template-rows: auto auto;
  }
}
table.u.col td {
  -webkit-align-content: center;
  align-content: center;
}

@container _container (max-width: 500px) {
  table.u.col td {
    grid-column: span 2;
    grid-row: span 2;
  }
}
@container _container (min-width: 501px) {
  table.u.col td {
    border: 1px solid var(--color-border-gray);
    border-left: none;
  }
}
@container _container (max-width: 500px) {
  table.u.col td:not(:last-of-type) {
    border-bottom: 1px solid var(--color-border-gray);
  }
}
table.u.col td:where(.header, .footer) {
  grid-column: 1/-1;
  border-color: transparent;
}

table.u.col td:where(.header, .footer):not(:empty) {
  padding: 0.5em 0;
}

table.u.col td:where(.header, .footer):not(.title) {
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-align-items: center;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5em 1em;
}

table.u.col td:not(:where(.header, .footer)) {
  padding: 0.5em 0.75em;
}

@container _container (min-width: 501px) {
  table.u.col td:not(:where(.header, .footer)) {
    background-color: var(--color-base);
  }
}
table.u.col td:not(:where(.header, .footer)) .val > a:not(.e-user *)::before {
  font-family: "FontAwesome solid";
  content: "\f14c";
  vertical-align: baseline;
  margin-right: 0.25em;
  color: var(--color-main);
}

@container _container (max-width: 500px) {
  table.u.col td:not(:where(.title, .header, .footer)) {
    display: grid;
    grid-template-columns: subgrid;
  }
}
@container _container (min-width: 501px) {
  table.u.col td:not(.header):first-of-type {
    border-left: 1px solid var(--color-border-gray);
  }
}
table.u.col td:is(.header) {
  order: -1;
}

@container _container (max-width: 500px) {
  table.u.col td:is(.header):not(:empty) {
    padding: 0.5em 0.75em;
    margin-bottom: 0.5em;
  }
}
@container _container (min-width: 501px) {
  table.u.col td:is(.header):first-of-type + td {
    border-left: 1px solid var(--color-border-gray);
  }
}
@container _container (max-width: 500px) {
  table.u.col td.wrap :where(.label, .val) {
    grid-column: span 2;
  }
  table.u.col td.wrap .val {
    padding-left: 0.5em;
    margin-top: 0.5em;
  }
}
@container _container (max-width: 500px) {
  table.u.col td.title {
    order: -1;
  }
}
table.u.col td.title .label {
  display: none;
}

table.u.col td.footer > a {
  padding: 0 0.5em;
}

table.u.col td.footer > a:not(.u-status)::before {
  font-family: "FontAwesome solid";
  content: "\f138";
  vertical-align: baseline;
  margin-right: 0.35em;
  color: var(--color-main);
}

table.u.col td.footer > a.js_mase_dlg_link::before {
  font-family: "FontAwesome regular";
  content: "\f2d2";
  vertical-align: baseline;
}

@container _container (min-width: 501px) {
  table.u.col td.r {
    text-align: right;
  }
  table.u.col td.r .u-numUnit {
    -webkit-justify-content: end;
    justify-content: end;
  }
}
@container _container (min-width: 501px) {
  table.u.col td.c {
    text-align: center;
  }
  table.u.col td.c .u-numUnit {
    -webkit-justify-content: center;
    justify-content: center;
  }
}
table.u.col td.unsetBg {
  background-color: transparent;
  border: none;
}

@container _container (max-width: 500px) {
  table.u.col td :where(.label, .val) {
    grid-row: span 2;
    display: grid;
    grid-template-columns: subgrid;
    grid-template-rows: subgrid;
    -webkit-align-items: center;
    align-items: center;
  }
}
@container _container (min-width: 501px) {
  table.u.col td .label {
    display: none;
  }
}
table.u.row caption {
  display: block;
  background-color: var(--color-base);
  text-align: left;
  padding: 2em 1.5em 0;
}

@container _container (min-width: 501px) {
  table.u.row caption {
    padding-right: 2em;
    padding-left: 2em;
  }
}
table.u.row tbody {
  display: block;
  background-color: var(--color-base);
}

@container _container (min-width: 501px) {
  table.u.row tbody {
    display: grid;
    grid-template-columns: 1fr auto;
  }
  table.u.row tbody:not(.ui-dialog *, :has(tr.selectable)) {
    padding: 1em 0;
  }
}
table.u.row tr {
  display: block;
  border: 1px solid transparent;
}

table.u.row tr:not(:last-of-type) {
  border-bottom-color: var(--color-border-gray);
}

table.u.row tr:not(.ui-dialog *) {
  margin: 0 1em;
}

@container _container (max-width: 500px) {
  table.u.row tr {
    padding: 1em 0;
  }
}
@container _container (min-width: 501px) {
  table.u.row tr {
    grid-column: 1/-1;
    display: grid;
    grid-template-columns: subgrid;
    grid-template-rows: subgrid;
    -webkit-align-items: center;
    align-items: center;
  }
}
table.u.row tr.l :where([type=text], [type=password], [type=email], [type=number], [type=search], [type=tel]) {
  width: 100%;
}

table.u.row tr.l textarea {
  min-height: 10em;
}

@container _container (min-width: 501px) {
  table.u.row tr.m :where([type=text], [type=password], [type=email], [type=number], [type=search], [type=tel]) {
    width: var(--width-input-m);
  }
}
@container _container (min-width: 501px) {
  table.u.row tr.s :where([type=text], [type=password], [type=email], [type=number], [type=search], [type=tel]) {
    width: var(--width-input-s);
  }
}
table.u.row tr.ss :where([type=text], [type=password], [type=email], [type=number], [type=search], [type=tel]) {
  width: var(--width-input-ss);
}

table.u.row tr.none {
  display: none;
}

table.u.row tr:has(.u-gMap) {
  display: block;
}

table.u.row tr:has(+ [data-valid="0"]) {
  border-bottom: none;
}

table.u.row tr[data-valid="0"] {
  border-color: var(--color-border-ng);
}

table.u.row tr.required th {
  position: relative;
}

table.u.row tr.required th::before {
  font-family: "FontAwesome solid";
  content: "*";
  vertical-align: baseline;
  margin-right: 0.5em;
  color: var(--color-ng);
  position: absolute;
  top: 0;
  left: 0.5em;
}

table.u.row tr.single th {
  display: none;
}

table.u.row tr.single td {
  grid-column: 1/span 2;
  width: 100%;
}

table.u.row tr.single td textarea {
  min-height: 10em;
}

table.u.row tr.selectable {
  padding: 1em 2em;
  margin: 0;
}

table.u.row tr.selectable:has(input:checked) {
  color: var(--color-main-on);
  background-color: var(--color-main);
}

table.u.row :where(th, td) {
  display: block;
  padding: 1em 0.5em;
}

@container _container (min-width: 501px) {
  table.u.row :where(th, td) {
    padding: 1em;
  }
}
table.u.row th {
  font-weight: normal;
  font-size: 0.9em;
  opacity: 0.8;
  text-align: left;
}

table.u.row th .openRange {
  margin-top: 0.35em;
}

table.u.row th .openRange :disabled {
  display: none;
}

table.u.row th .openRange i {
  display: block;
}

table.u.row td:has(.u-gMap, .f-upload) > label {
  display: none;
}

@container _container (min-width: 501px) {
  table.u.row td:not(:has(.u-gMap)) {
    width: 65cqw;
  }
}
table.u.row td .u-validation {
  margin-bottom: 0.5em;
}

table.u.row td .unit {
  vertical-align: bottom;
  margin-left: 0.5em;
}

table.u.row td ._flex {
  -webkit-align-items: end;
  align-items: end;
}

table.u.row td ._flex div {
  -webkit-flex: 0 1 auto;
  flex: 0 1 auto;
}

table.u.row td :where(.clear, .check) {
  font-size: 0.9em;
}

time.u {
  color: var(--color-gray);
  font-style: italic;
  font-size: 0.8em;
}

ul.u > li {
  padding: 1em 0;
}

ul.u > li:first-of-type {
  padding-top: 0;
}

ul.u > li:not(:last-of-type) {
  border-bottom: 1px solid var(--color-border-gray);
}

.u-between {
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: space-between;
  -webkit-align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

.u-between > *:last-child {
  margin-left: auto;
}

.u-between .more::after {
  font-family: "FontAwesome solid";
  content: "\f08e";
  vertical-align: baseline;
  margin-left: 0.35em;
}

.u-calendar legend {
  display: -webkit-flex;
  -webkit-justify-content: center;
  -webkit-align-items: center;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 2em;
  width: 100cqw;
  padding: 0.5em;
}

.u-calendar legend > * {
  -webkit-flex: 0 1 auto;
  flex: 0 1 auto;
}

.u-calendar legend :where(a) {
  color: var(--color-main);
  cursor: pointer;
}

.u-calendar legend .back {
  font-size: 1.5em;
}

.u-calendar legend .back::before {
  font-family: "FontAwesome solid";
  content: "\f104";
  vertical-align: baseline;
}

.u-calendar legend .current {
  font-weight: bold;
  font-size: 1.25em;
}

.u-calendar legend .next {
  font-size: 1.5em;
}

.u-calendar legend .next::after {
  font-family: "FontAwesome solid";
  content: "\f105";
  vertical-align: baseline;
}

.u-calendar table {
  width: 100%;
  table-layout: fixed;
  border: none;
  border-collapse: collapse;
  text-align: center;
}

.u-calendar th {
  font-size: 0.8em;
  font-weight: normal;
  border: none;
  padding: 0.5em;
  padding-bottom: 1em;
}

.u-calendar td {
  border: 1px solid var(--color-border-gray);
  padding: 0.5em;
}

.u-change {
  text-align: center;
  padding: 1em;
}

.u-change span {
  padding: 0.5em;
}

.u-change span:last-of-type::before {
  font-family: "FontAwesome solid";
  content: "\f0a9";
  vertical-align: baseline;
  margin-right: 1em;
}

.u-choice ul {
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  display: flex;
  flex-wrap: wrap;
  gap: 0.2em;
}

.u-choice li {
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
}

.u-choice li:not(:has([type=checkbox], [type=radio])) {
  font-size: 0.9em;
  background-color: var(--color-base);
  border: 1px solid var(--color-border-gray);
  border-radius: var(--radius-s);
  text-align: center;
  padding: 0.25em 0.75em;
}

.u-choice li:has([type=checkbox]) label {
  font-size: 0.9em;
  background-color: var(--color-base);
  border: 1px solid var(--color-border-gray);
  border-radius: var(--radius-s);
  text-align: center;
  padding: 0.25em 0.75em;
  width: 100%;
  user-select: none;
}

.u-choice li:has([type=checkbox]) label:is(:checked + *) {
  color: var(--color-main-on);
  background-color: var(--color-main);
  border-color: transparent;
}

.u-choice li:has([type=checkbox]) input {
  display: none;
}

.u-choice li:has([type=radio]) {
  -webkit-flex: 0 1 auto;
  flex: 0 1 auto;
  padding: 0.5em;
}

.u-choice li:has([type=radio]) label {
  margin-left: 0.25em;
}

.u-breadcrumb li:not(:last-of-type)::after {
  font-family: "FontAwesome solid";
  vertical-align: baseline;
}

.u-breadcrumb a {
  display: inline-block;
  padding: 0.5em;
}

.u-btn {
  display: grid;
  grid-template-columns: repeat(3, auto);
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-content: center;
  align-content: center;
  -webkit-place-items: center;
  place-items: center;
  min-height: var(--input-height);
  font-weight: bold;
  background-color: white;
  border: 1px solid var(--color-border-gray);
  border-radius: 2em;
  user-select: none;
  transition: 0.2s;
  padding: 1em;
}

.u-btn:is(.u-formFooter *, .u-btns *) {
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
  min-width: 8em;
  max-width: 24em;
}

.u-btn.mainPrimary {
  color: var(--color-main-on);
  background-color: var(--color-main);
}

.u-btn.mainPrimary:hover {
  color: var(--color-main);
  background-color: var(--color-main-on);
  border: 1px solid var(--color-border-main);
  opacity: 1;
}

.u-btn.mainPrimary:is(.u-formFooter *, .u-btns *) {
  -webkit-flex: 2 1 auto;
  flex: 2 1 auto;
}

.u-btn.mainSecondary {
  color: var(--color-main);
  background-color: var(--color-main-on);
  border: 1px solid var(--color-border-main);
}

.u-btn.mainSecondary:hover {
  color: var(--color-main-on);
  background-color: var(--color-main);
  opacity: 1;
}

.u-btn.subPrimary {
  color: var(--color-sub-on);
  background-color: var(--color-sub);
}

.u-btn.subPrimary:hover {
  color: var(--color-sub);
  background-color: var(--color-sub-on);
  border: 1px solid var(--color-border-sub);
  opacity: 1;
}

.u-btn.subSecondary {
  color: var(--color-sub);
  background-color: var(--color-sub-on);
  border: 1px solid var(--color-border-sub);
}

.u-btn.subSecondary:hover {
  color: var(--color-sub-on);
  background-color: var(--color-sub);
  opacity: 1;
}

.u-btn.search {
  grid-template-columns: 1fr;
  text-align: center;
  position: relative;
}

.u-btn.search::before {
  font-family: "FontAwesome solid";
  content: "\f002";
  vertical-align: baseline;
  -webkit-justify-self: center;
  justify-self: center;
}

.u-btn.calendar:hover {
  color: var(--color-main-on);
  background-color: var(--color-main);
}

.u-btn.calendar::before {
  font-family: "FontAwesome solid";
  content: "\f073";
  vertical-align: baseline;
}

.u-btn:where([name], .prev, .next) {
  grid-template-columns: auto 1fr auto;
  -webkit-justify-items: center;
  justify-items: center;
  gap: 0 0.5em;
}

.u-btn:where([name], .prev, .next)::before {
  content: "";
  display: inline-block;
}

.u-btn:where([name], .prev, .next)::after {
  content: "";
  display: inline-block;
}

.u-btn:where([name], .prev, .next)::before {
  -webkit-justify-self: start;
  justify-self: start;
}

.u-btn:where([name], .prev, .next)::after {
  -webkit-justify-self: end;
  justify-self: end;
}

.u-btn[name*="[save]"]::after {
  font-family: "FontAwesome solid";
  content: "\f058";
  vertical-align: baseline;
}

.u-btn:where([name*="[back]"], .prev)::before {
  font-family: "FontAwesome solid";
  content: "\f177";
  vertical-align: baseline;
}

.u-btn:where([name*="[conf]"], .next)::after {
  font-family: "FontAwesome solid";
  content: "\f178";
  vertical-align: baseline;
}

.u-btn:where([name*="[delete]"])::after {
  font-family: "FontAwesome solid";
  content: "\f057";
  vertical-align: baseline;
}

.u-btn[href]::before {
  font-family: "FontAwesome solid";
  vertical-align: baseline;
  margin-right: 0.5em;
}

.u-btn[href*="/follow"]::before {
  content: "\f4fc";
}

.u-btn[href*="/postMessage"]::before {
  content: "\f1d8";
}

.u-btn[href*="/block"]::before {
  content: "\f505";
}

.u-btn[href*="/unblock"]::before {
  content: "\f4fc";
}

.u-btn[href*="/ownerCaseList"]::before {
  content: "\f022";
}

.u-btn[href*="/postMessageToEntry"]::before {
  content: "\f1d8";
}

.u-btn[href*="/favorite"]::before {
  content: "\f004";
}

.u-btn[href*="/question"]::before {
  content: "\f059";
}

.u-btn[href*="/edit"]::before {
  content: "\f044";
}

.u-btn[href*="/entryManage"]::before {
  content: "\f4fe";
}

.u-btn.check::before {
  font-family: "FontAwesome solid";
  content: "\f14a";
  vertical-align: baseline;
  margin-right: 0.35em;
}

.u-btn.clear::before {
  font-family: "FontAwesome solid";
  content: "\f2d3";
  vertical-align: baseline;
  margin-right: 0.35em;
}

.u-btn[disabled] {
  color: var(--color-gray-light);
  background-color: var(--color-gray);
  border: var(--color-gray-light);
  cursor: auto;
}

.u-btn[disabled]:hover {
  color: var(--color-gray-light);
  background-color: var(--color-gray);
  border: var(--color-gray-light);
}

.u-btns {
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.5em;
}

.u-contentType:not(.image) {
  display: inline-block;
  max-width: 100%;
  border: 1px solid var(--color-border-gray);
  border-radius: var(--radius-s);
  word-break: break-all;
  padding: 0.5em 1em;
}

.u-contentType.application::before {
  content: "\f15b";
}

.u-contentType.audio::before {
  content: "\f1c7";
}

.u-contentType.text::before {
  content: "\f15c";
}

.u-contentType.video::before {
  content: "\f1c8";
}

.u-contentType:not(._universalMediadata) img {
  width: 5rem;
  aspect-ratio: 1;
  border-radius: var(--radius-m);
}

.u-contentType::before {
  font-family: "FontAwesome solid";
  vertical-align: baseline;
  margin-right: 0.35em;
}

.js-dialog {
  width: 100% !important;
  background-color: transparent;
  border: none;
  outline: none;
  text-align: center;
  position: fixed;
  top: 50%;
  translate: 0 -50%;
  z-index: 999;
}

.js-dialog * {
  background-color: transparent;
  border: none;
  outline: none;
}

.u-dialog {
  display: inline-block;
  max-width: var(--width-dialog-max);
  max-height: var(--height-dialog-max);
  position: relative;
}

.u-dialog:is([open] *) {
  animation: show 0.25s ease-in 0s;
}

.u-dialog:is(.loading *)::before {
  content: "";
  display: block;
  width: 50px;
  aspect-ratio: 1;
  border: 5px solid var(--color-main);
  border-top: 5px solid transparent;
  border-radius: 50%;
  animation: spin 0.75s linear 0s infinite;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 0;
  translate: -50% -50%;
}

.u-dialog:not(.loading *) .content {
  display: inline-block;
  color: var(--initial-color);
  background-color: var(--color-base);
  border: 5px solid var(--color-base);
  border-radius: 8px;
  box-shadow: 2px 2px 5px lightgray;
  word-break: break-all;
  text-align: initial;
  overflow: hidden;
}

.u-dialog:not(.loading *) .content:not(:has(img)) {
  padding: max(1em, 1cqw) 1cqw;
}

.u-dialog:not(.loading *) .close {
  display: block;
  width: 30px;
  height: 30px;
  min-height: unset;
  color: white;
  background-color: var(--color-base);
  border-radius: 100%;
  cursor: pointer;
  line-height: 30px;
  position: absolute;
  top: 0;
  right: 0;
  translate: 25% -25%;
  box-shadow: 2px 2px 2px lightgray;
}

.u-dialog:not(.loading *) .close span {
  display: block;
  width: 75%;
  height: 2px;
  background-color: var(--color-main);
  border-radius: 2px;
  margin-inline: auto;
}

.u-dialog:not(.loading *) .close span:first-child {
  rotate: 45deg;
  translate: 0 1px;
}

.u-dialog:not(.loading *) .close span:last-child {
  rotate: -45deg;
  translate: 0 -1px;
}

.u-dialog img {
  display: block;
  border-radius: 8px;
  object-fit: contain;
}

.u-dls {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.5em 1em;
}

.u-dls dl {
  display: grid;
  grid-template-columns: subgrid;
  grid-template-rows: subgrid;
  -webkit-align-items: center;
  align-items: center;
  grid-column: span 2;
}

.u-dlDatas {
  display: grid;
  grid-template-columns: min-content auto;
  grid-template-rows: auto auto;
  gap: 0.5em 1em;
  font-size: 0.9em;
}

.u-dlDatas section {
  display: contents;
}

.u-dlDatas h4 {
  grid-column: 1/span 2;
  font-size: 0.9em;
  text-align: center;
}

.u-dlDatas h4::before {
  font-family: "FontAwesome solid";
  content: "\f023";
  vertical-align: baseline;
  margin-right: 0.35em;
}

.u-dlDatas dl {
  display: grid;
  grid-template-columns: subgrid;
  grid-template-rows: subgrid;
  -webkit-align-items: center;
  align-items: center;
  grid-column: 1/-1;
  grid-row: span 2;
  padding: 0.5em;
}

.u-dlDatas dl:not(:last-of-type) {
  border-bottom: 1px solid var(--color-border-gray);
}

.u-dlDatas dt {
  font-size: 0.9em;
  color: var(--color-gray);
  white-space: nowrap;
  margin-bottom: 0.25em;
}

.u-dlDatas dt:is(.single *) {
  grid-column: 1/span 2;
  grid-row: span 1;
}

.u-dlDatas dd:not(.single *) {
  -webkit-justify-self: end;
  justify-self: end;
}

.u-dlDatas dd:is(.single *) {
  grid-column: 1/span 2;
  grid-row: span 1;
}

.u-evaluationList {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1em;
}

@container _container (min-width: 601px) {
  .u-evaluationList {
    grid-template-columns: 1fr 1fr;
  }
}
.u-flash {
  position: relative;
}

.u-flash::after {
  content: "";
  display: inline-block;
  width: 2em;
  height: 100%;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, white 100%);
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, white 100%);
  clip-path: polygon(25% 0%, 100% 0%, 75% 100%, 0% 100%);
  animation-name: flash;
  animation-duration: 5s;
  animation-delay: 0.5s;
  animation-timing-fuction: ease-in-out;
  animation-iteration-count: infinite;
  animation-fill-mode: forwards;
  position: absolute;
  left: -2em;
}

.u-form fieldset {
  border-radius: var(--radius-m);
  margin-bottom: 2em;
}

.u-form legend {
  width: auto;
  font-weight: bold;
  font-size: 0.9em;
  color: var(--color-main);
  padding: 1em;
  translate: 0 0.5em;
}

.u-form legend:is(.required *) {
  position: relative;
}

.u-form legend:is(.required *)::before {
  font-family: "FontAwesome solid";
  content: "*";
  vertical-align: baseline;
  margin-right: 0.5em;
  color: var(--color-ng);
  position: absolute;
  top: 0;
  left: 0.5em;
}

.u-form .u-formFooter {
  background-color: var(--color-base);
  padding: 1em;
  position: sticky;
  bottom: 0;
  z-index: 1;
}

.u-formFooter {
  container: u-formFooter/inline-size;
  position: relative;
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: center;
  -webkit-align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 2cqw;
  padding: 1em 0;
}

.u-formFooter:not(:is(.ui-dialog *)) {
  margin-top: 1em;
}

.u-formFooter div {
  display: contents;
}

.u-formNav {
  container: u-formNav/inline-size;
  position: relative;
  position: sticky;
  top: var(--stickyPageTop);
}

.u-formNav nav {
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  display: flex;
  flex-wrap: wrap;
  gap: 0.25em;
  padding-top: 1em;
}

.u-formNav a {
  display: block;
  font-size: 0.9em;
  background-color: white;
  border: 1px solid transparent;
  cursor: pointer;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 0.25em 0.75em;
  margin-bottom: 0.5em;
}

@container u-formNav (max-width: 300px) {
  .u-formNav a {
    width: 100%;
  }
}
.u-formNav a:hover {
  border-color: var(--color-border-gray);
}

.u-formNav a:is(.submitted *)[data-valid="0"]::before {
  content: "\f06a";
  color: var(--color-ng);
}

.u-formNav a:is(.submitted *)[data-valid="1"]::before {
  content: "\f058";
  color: var(--color-ok);
}

.u-formNav a::before {
  font-family: "FontAwesome solid";
  content: "\f138";
  vertical-align: baseline;
  display: inline-block;
  width: 1.5em;
  color: var(--color-gray);
  text-align: center;
}

.u-fromTo {
  word-break: keep-all;
}

.u-gMap {
  width: 100%;
  min-height: 250px;
  border-radius: var(--radius-l);
  resize: both;
  position: relative;
}

.u-gMap::after {
  font-family: "FontAwesome solid";
  content: "\f424";
  vertical-align: baseline;
  font-size: 1.5em;
  color: var(--color-main);
  position: absolute;
  right: 0.25em;
  bottom: 0.25em;
  z-index: 1;
  rotate: 90deg;
}

.u-gridList {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(var(--width-content-min), 1fr));
  gap: 1em;
}

@container _container (max-width: calc(500px + 1em)) {
  .u-gridList {
    -webkit-justify-content: center;
    justify-content: center;
  }
}
.u-help {
  display: block;
  font-size: smaller;
  margin-top: 0.25em;
}

.u-help:first-of-type {
  margin-top: 0.5em;
}

.u-help::before {
  content: "※";
}

.u-invalidInfo:has(*) {
  margin-bottom: 1em;
}

.u-keyword input {
  border-radius: 1.5em;
}

.u-label {
  display: inline-grid;
  grid-template-columns: auto auto min-content;
  -webkit-align-content: center;
  align-content: center;
  font-size: 0.9em;
  background-color: var(--color-base);
}

.u-label:is(.zerohide *):has([data-count="0"]) {
  display: none;
}

.u-label :where(dt, dd) {
  border: 1px solid var(--color-border-gray);
}

.u-label :where(dt, p, i, a) {
  padding: 0.25em 0.5em;
}

.u-label dt {
  font-weight: bold;
  border-right: none;
  border-top-left-radius: var(--radius-m);
  border-bottom-left-radius: var(--radius-m);
  padding-right: 1em;
  padding-left: 1em;
}

.u-label dd {
  grid-column: 2/-1;
  display: grid;
  grid-template-columns: subgrid;
  grid-template-rows: subgrid;
  border-top-right-radius: var(--radius-m);
  border-bottom-right-radius: var(--radius-m);
}

.u-label i {
  display: inline-block;
}

.u-label i:not([data-count="0"] *) {
  color: var(--color-sub-on);
  background-color: var(--color-sub);
}

.u-label p {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding-right: 1.5em;
}

.u-label p br {
  display: none;
}

.u-label a {
  color: var(--color-main-on);
  background-color: var(--color-main);
}

.u-label a::before {
  font-family: "FontAwesome solid";
  content: "\f044";
  vertical-align: baseline;
}

.u-mediaDatas {
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  display: flex;
  flex-wrap: wrap;
  gap: 1em;
}

.u-mediaDatas:has(:not([type=hidden])) {
  padding: 1em 0;
}

.u-mediaDatas a:is(.image) {
  width: max(10cqw, 5em);
}

.u-mediaDatas a:is(.image) img {
  width: 100%;
  aspect-ratio: 1;
  border-radius: var(--radius-m);
}

.u-mediaDatas a:not(.image) {
  -webkit-align-self: center;
  align-self: center;
}

.u-manages:has(a, span) {
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-justify-content: end;
  -webkit-align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: end;
  align-items: center;
  padding: 1em 0;
}

.u-manages:has(a, span) div {
  display: contents;
}

.u-manages :where(a, span) {
  font-size: 0.9em;
  padding: 0.25em 1em;
}

.u-manages a.add::before {
  content: "\f31c";
}

.u-manages a.edit::before {
  content: "\f304";
}

.u-manages a.list::before {
  content: "\f0cb";
}

.u-manages a.change::before {
  content: "\f363";
}

.u-manages a.elect::before {
  content: "\e2ca";
}

.u-manages a::before {
  font-family: "FontAwesome solid";
  vertical-align: baseline;
  margin-right: 0.25em;
  color: var(--color-main);
}

.u-metaDatas {
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em;
}

.u-metaDatas li:is(.hierarchy *):not(:first-child)::before {
  content: "\f105";
  margin-right: 0.5em;
}

.u-metaDatas li:not(:has(.u-status)):is(.tag *)::before {
  content: "\f02b";
}

.u-metaDatas li:not(:has(.u-status))::before {
  font-family: "FontAwesome solid";
  vertical-align: baseline;
  margin-right: 0.25em;
}

.u-note:not(:empty) {
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  display: flex;
  flex-wrap: wrap;
  padding: 1em 0;
}

.u-note:not(:empty)::before {
  font-family: "FontAwesome solid";
  content: "\f05a";
  vertical-align: baseline;
  margin-right: 0.5em;
  color: var(--color-main);
}

.u-note.c {
  -webkit-justify-content: center;
  justify-content: center;
}

.u-notice {
  color: var(--color-ng);
}

.u-notice:not(:empty) {
  padding: 1em 0;
}

.u-notice.c {
  text-align: center;
}

.u-numUnit {
  display: -webkit-flex;
  -webkit-align-items: baseline;
  display: flex;
  align-items: baseline;
}

.u-numUnit:is(.mainCurrency) b {
  font-size: 1.5em;
  color: var(--color-main);
}

.u-numUnit:not(.mainCurrency) b {
  font-weight: normal;
}

.u-numUnit small {
  font-size: 0.85em;
  margin-left: 0.5em;
}

.u-openClose {
  container: openClose/inline-size;
  position: relative;
  display: none;
  opacity: 0;
  position: relative;
  top: calc(-1 * var(--animationMoveUp));
}

.u-openClose:is(:has(:checked) + *) {
  display: block;
  animation-name: open;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
}

.u-openCloser {
  display: -webkit-flex;
  -webkit-justify-content: center;
  display: flex;
  justify-content: center;
}

.u-openCloser:has(:checked)::after {
  rotate: 180deg;
}

.u-openCloser::after {
  font-family: "FontAwesome solid";
  content: "\f078";
  vertical-align: baseline;
  display: inline-block;
  text-align: center;
  transition: 0.25s;
  rotate: 0deg;
}

.u-openCloser input {
  display: none;
}

.u-openRange.public::before {
  content: "\f3c1";
}

.u-openRange.member::before {
  content: "\f502";
}

.u-openRange.private::before {
  content: "\f023";
}

.u-openRange::before {
  font-family: "FontAwesome solid";
  vertical-align: baseline;
  margin-right: 0.25em;
}

.u-pageNav {
  border-top: 1px solid var(--color-border-gray);
  border-bottom: 1px solid var(--color-border-gray);
  padding: 0.5em 1em;
}

.u-pageNav.u-sticky {
  width: 100%;
  background-color: var(--initial-bgColor);
  top: var(--siteHeaderHeight);
}

.u-pageNav nav:is(.swiper-wrapper) {
  height: auto;
}

.u-pageNav nav:not(.swiper-wrapper) {
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  display: flex;
  flex-wrap: wrap;
}

.u-pageNav a {
  display: -webkit-flex;
  -webkit-justify-content: center;
  -webkit-align-items: center;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 0.9em;
  cursor: pointer;
  padding: 0.25em 0.75em;
}

.u-pageNav a:is(.swiper-wrapper *) {
  width: auto;
}

.u-pageNav a:not(.swiper-wrapper *) {
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
}

.u-pageNav a:not(:last-of-type) {
  border-right: 1px solid var(--color-border-gray);
}

.u-pageNav a::after {
  font-family: "FontAwesome solid";
  content: "\f107";
  vertical-align: baseline;
  margin-left: 1em;
}

.u-progress {
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  display: flex;
  flex-wrap: wrap;
  gap: 1em 0;
}

.u-progress span {
  display: inline-block;
  width: 7em;
  font-size: 0.7em;
  text-align: center;
  position: relative;
}

.u-progress span:last-of-type::after {
  display: none;
}

.u-progress span.active b::before {
  font-family: "FontAwesome solid";
  content: "\f111";
  vertical-align: baseline;
}

.u-progress span.active ~ span b::before {
  font-family: "FontAwesome regular";
  content: "\f111";
  vertical-align: baseline;
}

.u-progress span:where(.disabled, .rejection):not(.active) {
  display: none;
}

.u-progress span:first-of-type::before {
  border-top-left-radius: 0.5em;
  border-bottom-left-radius: 0.5em;
}

.u-progress span::before {
  content: "";
  display: inline-block;
  width: calc(50% - 1em + 1px);
  height: 8px;
  background-color: var(--color-main);
  position: absolute;
  top: 1em;
}

.u-progress span::after {
  content: "";
  display: inline-block;
  width: calc(50% - 1em + 1px);
  height: 8px;
  background-color: var(--color-main);
  position: absolute;
  top: 1em;
}

.u-progress span::before {
  left: 0;
}

.u-progress span::after {
  right: 0;
}

.u-progress b::before {
  font-family: "FontAwesome solid";
  content: "\f058";
  vertical-align: baseline;
  display: block;
  font-size: 2em;
  color: var(--color-main);
  margin-bottom: 0.25em;
}

.u-rangeForm:not(.datetime) {
  display: -webkit-flex;
  -webkit-align-items: start;
  display: flex;
  align-items: start;
  gap: 0.5em;
}

@container _container (min-width: 901px) {
  .u-rangeForm:is(.datetime) {
    display: -webkit-flex;
    -webkit-flex-wrap: wrap;
    -webkit-align-items: start;
    display: flex;
    flex-wrap: wrap;
    align-items: start;
    gap: 0.5em;
  }
}
.u-rangeForm > div:not(.datetime *) {
  -webkit-flex: 0 1 auto;
  flex: 0 1 auto;
}

@container _container (min-width: 901px) {
  .u-rangeForm > div:is(.datetime *) {
    -webkit-flex: 1 0 auto;
    flex: 1 0 auto;
  }
}
.u-rangeForm > div:has(.unit) {
  display: grid;
  grid-template-columns: auto auto;
  -webkit-align-items: baseline;
  align-items: baseline;
}

.u-rangeForm > span {
  display: block;
  text-align: center;
}

@container _container (max-width: 900px) {
  .u-rangeForm > span:is(.datetime *)::after {
    rotate: 90deg;
  }
}
.u-rangeForm > span::after {
  font-family: "FontAwesome solid";
  content: "\e4ba";
  vertical-align: baseline;
  display: inline-block;
  padding: 0.5em 0;
}

.u-rate {
  display: -webkit-flex;
  display: flex;
  color: var(--color-main);
}

.u-rate::before {
  font-family: "FontAwesome solid";
  content: "";
  vertical-align: baseline;
  order: -2;
}

.u-rate::after {
  font-family: "FontAwesome regular";
  content: "";
  vertical-align: baseline;
  order: -1;
  margin-right: 0.5em;
}

.u-rate[data-rate="0.5"]::before {
  content: "\f5c0";
}

.u-rate[data-rate="0.5"]::after {
  content: "\f005\f005\f005\f005";
}

.u-rate[data-rate="1.0"]::before {
  content: "\f005";
}

.u-rate[data-rate="1.0"]::after {
  content: "\f005\f005\f005\f005";
}

.u-rate[data-rate="1.5"]::before {
  content: "\f005\f5c0";
}

.u-rate[data-rate="1.5"]::after {
  content: "\f005\f005\f005";
}

.u-rate[data-rate="2.0"]::before {
  content: "\f005\f005";
}

.u-rate[data-rate="2.0"]::after {
  content: "\f005\f005\f005";
}

.u-rate[data-rate="2.5"]::before {
  content: "\f005\f005\f5c0";
}

.u-rate[data-rate="2.5"]::after {
  content: "\f005\f005";
}

.u-rate[data-rate="3.0"]::before {
  content: "\f005\f005\f005";
}

.u-rate[data-rate="3.0"]::after {
  content: "\f005\f005";
}

.u-rate[data-rate="3.5"]::before {
  content: "\f005\f005\f005\f5c0";
}

.u-rate[data-rate="3.5"]::after {
  content: "\f005";
}

.u-rate[data-rate="4.0"]::before {
  content: "\f005\f005\f005\f005";
}

.u-rate[data-rate="4.0"]::after {
  content: "\f005";
}

.u-rate[data-rate="4.5"]::before {
  content: "\f005\f005\f005\f005\f5c0";
}

.u-rate[data-rate="5.0"]::before {
  content: "\f005\f005\f005\f005\f005";
}

.u-rateCount {
  display: inline-block;
}

.u-rateCount::before {
  content: "(";
  margin-right: 0.25em;
}

.u-rateCount::after {
  content: ")";
  margin-left: 0.25em;
}

.u-read {
  font-size: 0;
}

@container _container (max-width: 500px) {
  .u-read:is(table.col *) {
    margin-bottom: 0.5rem;
  }
}
@container _container (min-width: 501px) {
  .u-read:is(table.col *) {
    margin-right: 0.5rem;
  }
}
.u-read::before {
  font-family: "FontAwesome solid";
  vertical-align: baseline;
  font-size: 1rem;
}

.u-searchForm {
  container: u-searchForm/inline-size;
  position: relative;
}

@container u-searchForm (min-width: 601px) {
  .u-searchForm fieldset.grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(10em, auto));
    grid-template-rows: auto 1fr;
    gap: 0.5em;
  }
}
@container u-searchForm (min-width: 601px) {
  .u-searchForm fieldset.flex {
    display: -webkit-flex;
    -webkit-flex-wrap: wrap;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5em;
  }
}
.u-searchForm fieldset.center {
  -webkit-justify-content: center;
  justify-content: center;
}

.u-searchForm fieldset:not(:first-of-type) {
  margin-top: 1em;
}

@container u-searchForm (max-width: 600px) {
  .u-searchForm dl {
    margin-bottom: 0.75em;
  }
}
@container u-searchForm (min-width: 601px) {
  .u-searchForm dl:is(.grid *) {
    display: grid;
    grid-template-columns: subgrid;
    grid-template-rows: subgrid;
    gap: 0;
    grid-row: span 2;
  }
}
.u-searchForm dl:is(.u-openClose *) {
  max-width: 100cqw;
}

.u-searchForm dl._none {
  display: none;
}

.u-searchForm dl.l :where([type=text], [type=password], [type=email], [type=number], [type=search], [type=tel]) {
  width: 100%;
}

.u-searchForm dl.l textarea {
  min-height: 10em;
}

@container u-searchForm (min-width: 601px) {
  .u-searchForm dl.s :where([type=text], [type=password], [type=email], [type=number], [type=search], [type=tel]) {
    width: var(--width-input-s);
  }
}
@container u-searchForm (min-width: 601px) {
  .u-searchForm dl.ss :where([type=text], [type=password], [type=email], [type=number], [type=search], [type=tel]) {
    width: var(--width-input-ss);
  }
}
.u-searchForm dt label {
  width: 100%;
  font-size: 0.9em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.u-searchForm dd:not(:has(.u-range)) {
  display: grid;
  grid-template-columns: auto;
  grid-template-rows: min-content;
}

.u-searchForm dd:has(.unit) {
  grid-template-columns: auto min-content;
}

.u-searchForm dd .u-validation {
  order: 1;
}

.u-searchForm dd .unit {
  -webkit-align-self: end;
  align-self: end;
  margin-left: 0.5em;
}

.u-searchForm .u-openCloser {
  padding: 1em;
}

.u-searchForm .u-openCloser::after {
  margin-left: 1em;
}

.u-searchForm .u-openClose {
  border-radius: var(--radius-m);
  background-color: var(--color-base);
  padding: 1em;
  margin-bottom: 1em;
}

.u-searchForm [type=text] {
  width: 100%;
}

.u-searchForm select {
  max-width: 100cqw;
}

.u-searchForm select:is(.grid *) {
  width: 100%;
}

.u-sideMenu {
  display: grid;
}

.u-sideMenu:is(._e:has(.e-myMenu) *) {
  padding-right: 2em;
}

.u-sideMenu :where(a, label) {
  display: grid;
  grid-template-columns: 2em 1fr 1.5em;
  gap: 0.5em;
  font-size: 0.9em;
  border-bottom: 1px solid #F2F2F2;
  background-color: var(--color-base);
  user-select: none;
  padding: 0.75em 0.5em;
  margin-bottom: 1px;
  position: relative;
}

.u-sideMenu :where(a, label):hover {
  color: var(--color-main-on);
  background-color: var(--color-main);
  opacity: 1;
}

.u-sideMenu :where(a, label)::before {
  font-family: "FontAwesome solid";
  content: "";
  vertical-align: baseline;
  display: inline-block;
  text-align: center;
}

.u-sideMenu .current {
  color: var(--color-main-on);
  background-color: var(--color-main);
  pointer-events: none;
  order: -3;
}

.u-sideMenu .current::after {
  content: "";
  width: 2em;
  height: 100%;
  background-color: inherit;
  clip-path: polygon(0 0, 0% 100%, 50% 49%);
  opacity: 1;
  position: absolute;
  top: 0;
  right: -2em;
}

.u-sideMenu a.add::before {
  content: "+";
}

.u-sideMenu a.list::before {
  content: "\f0cb";
}

.u-sideMenu a.edit::before {
  content: "\f304";
}

.u-sideMenu a.manage::before {
  content: "\f013";
}

.u-sideMenu a.next::before {
  content: "\f061";
}

.u-sideMenu a.download::before {
  content: "\f56d";
}

.u-sideMenu a.related {
  grid-template-columns: 2em 1fr;
  order: -1;
  color: var(--color-main);
  background-color: var(--color-main-on);
}

.u-sideMenu a.related:hover {
  color: var(--color-main-on);
  background-color: var(--color-main);
  opacity: 1;
}

.u-sideMenu a.related.primary {
  order: -2;
}

.u-sideMenu a.related::after {
  display: none;
}

.u-sideMenu a.prev::before {
  content: "\f060";
}

.u-sideMenu a.addtop {
  margin-top: 1em;
}

.u-status::before {
  font-family: "FontAwesome solid";
  vertical-align: baseline;
  margin-right: 0.25em;
}

.u-status[data-approved=approved]::before {
  content: "\f00c";
  color: var(--color-ok);
}

.u-status[data-approved=unapproved]::before {
  content: "\f252";
}

.u-status[data-recruit=open]::before {
  content: "\f234";
  color: var(--color-ok);
}

.u-status[data-recruit=closed]::before {
  content: "\f05e";
}

.u-status[data-event=open]::before {
  content: "\f274";
  color: var(--color-ok);
}

.u-status[data-event=closed]::before {
  content: "\f273";
}

.u-status[data-event=yet]::before {
  content: "\f783";
}

.u-status[data-read="0"]::before {
  content: "\f0e0";
  color: var(--color-ok);
}

.u-status[data-read="1"]::before {
  content: "\f658";
}

.u-status[data-deliveried=shipped]::before {
  content: "\f00c";
  color: var(--color-ok);
}

.u-status[data-deliveried=unshipped]::before {
  content: "\f0d1";
}

.u-status[data-resolved=resolved]::before {
  content: "\f274";
  color: var(--color-ok);
}

.u-status[data-resolved=closed]::before {
  content: "\f273";
}

.u-status[data-resolved=yet]::before {
  content: "\f328";
}

.u-status[data-caseOpenRange=public]::before {
  content: "\f09c";
  color: var(--color-ok);
}

.u-status[data-caseOpenRange=private]::before {
  content: "\f023";
}

.u-status[data-active=active]::before {
  content: "\f058";
  color: var(--color-ok);
}

.u-status[data-active=passive]::before {
  content: "\f05e";
}

.u-status[data-settlementKbn=paid]::before {
  content: "\f00c";
  color: var(--color-ok);
}

.u-status[data-settlementKbn=canceled]::before {
  content: "\f05e";
}

.u-status[data-settlementKbn=unpaid]::before {
  content: "\f543";
}

.u-status[data-shipped=shipped]::before {
  content: "\f00c";
  color: var(--color-ok);
}

.u-status[data-shipped=unshipped]::before {
  content: "\f0d1";
}

.u-status[data-commenced=progress]::before {
  content: "\f46c";
  color: var(--color-ok);
}

.u-status[data-commenced=yet]::before {
  content: "\f251";
}

.u-status.ringing {
  font-weight: bold;
  color: var(--color-main);
}

.u-status.ringing::before {
  font-family: "FontAwesome solid";
  content: "\f0f3";
  vertical-align: baseline;
  animation-name: bell;
  animation-duration: 4s;
  animation-iteration-count: infinite;
}

.u-sticky {
  position: sticky;
  top: var(--stickyPageTop);
  z-index: 2;
}

.u-sym.x::before {
  content: "\f00d";
}

.u-sym.plus::before {
  content: "+";
}

.u-sym.equal::before {
  content: "=";
}

.u-sym.search::before {
  content: "\f002";
}

.u-sym::before {
  font-family: "FontAwesome solid";
  vertical-align: baseline;
}

.u-tab {
  display: -webkit-flex;
  display: flex;
  gap: 0.5em;
  border-bottom: 1px solid #DDD;
}

.u-tab li {
  position: relative;
  top: 1px;
}

.u-tab label {
  display: block;
  border: 1px solid #DDD;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  transition: 0.25s;
  padding: 0.75em 1.5em;
}

.u-tab label:hover {
  color: var(--color-main);
}

.u-tab label:has(:checked) {
  font-weight: bold;
  color: var(--color-main);
  border-bottom-color: var(--initial-bgColor);
}

.u-userList:has(._grid.col) {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(var(--width-userList), 1fr));
  gap: 2em 1em;
}

.u-userList:has(._grid.col) .e-user img {
  width: 90%;
}

.u-userList:has(._grid.col) .e-user em {
  font-size: 1.2em;
}

.u-validation {
  color: var(--color-ng);
  font-size: 0.8em;
  font-weight: normal;
  padding: 0.25em 0;
}

.u-validation li:not(:last-of-type) {
  margin-bottom: 0.25em;
}

/* embed */
.e-contentOpen .opener {
  display: -webkit-flex;
  -webkit-justify-content: space-between;
  -webkit-align-items: center;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  user-select: none;
  padding: 1em;
}

.e-contentOpen .opener:is(.close)::after {
  rotate: 0deg;
}

.e-contentOpen .opener:is(.open)::after {
  rotate: 180deg;
}

.e-contentOpen .opener::after {
  font-family: "FontAwesome solid";
  content: "\f107";
  vertical-align: baseline;
  transition: 0.2s;
}

.e-contentOpen .content {
  transition: 0.5s;
  overflow: hidden;
}

.e-contentOpen .content:is(.open + *) {
  max-height: 500px;
}

.e-contentOpen .content:is(.close + *) {
  max-height: 0;
}

.e-user.row :where(a, div) {
  display: -webkit-flex;
  -webkit-align-items: center;
  display: flex;
  align-items: center;
  gap: 0.5em;
  gap: 0.5em;
}

.e-user.col {
  text-align: center;
}

.e-user a {
  display: block;
}

.e-user img {
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 100%;
}

.e-user img:is(.row *) {
  width: 3em;
}

.e-user img:is(.col *) {
  width: 150px;
}

.e-user .text:is(.col *) {
  margin-top: 0.5em;
}

.e-user em {
  display: block;
  font-weight: bold;
  font-size: 1.1em;
  word-break: break-all;
  line-height: 1.25;
}

.e-user em:is(.col *) {
  text-align: center;
}

.e-comments .u-between {
  grid-template-columns: 1fr auto min-content;
  gap: 0.5em 1em;
  margin-bottom: 1em;
}

.e-comments p {
  font-size: 0.9em;
}

.e-comments .u-btn {
  font-size: 0.8em;
}

.e-content {
  container: e-content/inline-size;
  position: relative;
  height: 100%;
  background-color: var(--color-base);
  border: 1px solid var(--color-border-gray);
  border-radius: var(--radius-l);
  margin-inline: auto;
  overflow: hidden;
}

.e-content > ._grid {
  display: grid;
  grid-template: "header" min-content "img" min-content "user" min-content "title" auto "excerpt" auto "footer" 1fr;
  height: inherit;
  position: relative;
}

@container e-content (min-width: 351px) {
  .e-content > ._grid.row {
    display: grid;
    grid-template: "img header" min-content "img user" min-content "img title" auto "img excerpt" auto "img footer" 1fr;
    grid-template-columns: max-content auto;
  }
}
.e-content .wrapper {
  grid-column: 1/-1;
  grid-row: 1/-1;
}

.e-content header {
  grid-area: header;
}

.e-content .img {
  grid-area: img;
  width: 100%;
  aspect-ratio: 16/9;
  border: 1px solid var(--color-border-gray);
  border-top-left-radius: var(--radius-m);
  border-top-right-radius: var(--radius-m);
}

.e-content .img _:lang(x)::-moz-placeholder, .e-content .img {
  height: 10em;
}

.e-content .img[src*=noImage] {
  object-fit: contain;
  padding: 15%;
}

@container e-content (min-width: 351px) {
  .e-content .img:is(.e-content > .row *) {
    width: 40cqw;
    height: 100%;
    aspect-ratio: 5/3;
    border-right: 1px solid var(--color-border-gray);
  }
}
.e-content .texts {
  grid-column: 1/-1;
  grid-row: 3/-1;
  gap: 0.25em 0;
  padding: 1em 0.5em;
}

@container e-content (min-width: 351px) {
  .e-content .texts:is(.e-content > .row *) {
    grid-column: 2/-1;
    grid-row: 1/-1;
  }
}
.e-content .title {
  grid-area: title;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.e-content .title:is(.e-content > .row *) {
  font-size: 1.1em;
}

.e-content .excerpt {
  grid-area: excerpt;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.e-content footer {
  grid-area: footer;
  -webkit-align-content: end;
  align-content: end;
  margin-top: 0.5em;
}

.e-content .e-user {
  grid-area: user;
  padding: 0 1em;
  z-index: 1;
}

.e-content .e-user:is(.e-content > .col *) {
  margin-top: -0.5em;
}

@container e-user (max-width: 350px) {
  .e-content .e-user img {
    width: 4em;
  }
}
.e-contentHeader {
  container: e-contentHeader/inline-size;
  position: relative;
}

.e-contentHeader > ._grid {
  display: grid;
  grid-template: "img" "above" "title" "excerpt" "below";
  gap: 0.5em 0;
}

@container e-contentHeader (min-width: 451px) {
  .e-contentHeader > ._grid.row {
    display: grid;
    grid-template: "img above" min-content "img title" 1fr "img excerpt" min-content "img below" min-content;
    grid-template-columns: auto 1fr;
    gap: 0.25em;
    -webkit-align-items: center;
    align-items: center;
  }
}
.e-contentHeader .wrapper {
  grid-column: 1/-1;
  grid-row: 1/-1;
}

.e-contentHeader .img {
  grid-area: img;
  width: 100%;
  height: max(5vh, 7.5em);
  border-radius: var(--radius-m);
}

.e-contentHeader .img:is(.e-contentHeader > .col *) {
  height: 20vh;
  margin-bottom: 0.5em;
}

@container e-contentHeader (min-width: 451px) {
  .e-contentHeader .img:is(.e-contentHeader > .row *) {
    width: max(6cqw, 3em);
    height: max(6cqw, 3em);
    min-height: 100%;
    margin-right: 0.75em;
  }
}
.e-contentHeader :where(.above, .below) {
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  -webkit-align-items: center;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5em 1em;
  font-size: 0.9em;
  position: relative;
  z-index: 1;
}

.e-contentHeader :where(.above, .below) :only-child {
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
}

.e-contentHeader .above {
  grid-area: above;
}

.e-contentHeader .title {
  grid-area: title;
  -webkit-align-self: center;
  align-self: center;
  font-size: 1.1em;
}

.e-contentHeader .title:is(.e-contentHeader > .col *) {
  font-size: 1.5em;
}

.e-contentHeader .excerpt {
  grid-area: excerpt;
}

.e-contentHeader .below {
  grid-area: below;
}

.e-evaluation {
  container: e-evaluation/inline-size;
  position: relative;
}

.e-evaluation > ._grid {
  display: grid;
  grid-template: "rate  rate    title" "user  excerpt excerpt";
  grid-template-columns: min-content auto 1fr;
  gap: 0.5em 0;
  -webkit-align-items: center;
  align-items: center;
}

.e-evaluation .u-rate {
  grid-area: rate;
  margin-right: 1em;
}

.e-evaluation .title {
  grid-area: title;
  text-decoration: underline;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.e-evaluation .e-user {
  grid-area: user;
  padding: 0.5em;
}

.e-evaluation .e-user ._grid {
  gap: 0;
}

.e-evaluation .excerpt {
  grid-area: excerpt;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.e-fold {
  position: relative;
}

.e-fold:has(.folder) {
  padding-bottom: 3em;
}

.e-fold:has(:checked) .foldContent {
  animation-name: unfold;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
}

.e-fold:not(:has(:checked)) .foldContent {
  animation-name: fold;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
}

.e-fold:not(:has(:checked)) .foldContent.overlay::after {
  content: "";
  display: block;
  width: 100%;
  height: 3em;
  background: var(--foldOverlay);
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
}

.e-fold .folder {
  width: 100%;
  text-align: center;
  padding: 1em;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
}

.e-fold .folder:has(:checked) .unfold {
  display: none;
}

.e-fold .folder:has(:checked) .fold {
  display: block;
}

.e-fold .folder:has(:checked) .fold::after {
  content: "\f106";
}

.e-fold .folder:not(:has(:checked)) .unfold {
  display: block;
}

.e-fold .folder:not(:has(:checked)) .unfold::after {
  content: "\f107";
}

.e-fold .folder:not(:has(:checked)) .fold {
  display: none;
}

.e-fold .folder span {
  display: none;
}

.e-fold .folder span::after {
  font-family: "FontAwesome solid";
  vertical-align: baseline;
  margin-left: 1em;
}

.e-fold .folder input {
  display: none;
}

.e-fold .foldContent {
  display: block;
  position: relative;
  overflow: hidden;
}

.e-messages {
  container: _tpl_messages/inline-size;
  position: relative;
  max-height: 70vh;
  border-top: 1px solid var(--color-border-gray);
  border-right: none;
  border-bottom: 1px solid var(--color-border-gray);
  border-left: none;
  border-image-source: linear-gradient(to right, transparent 0%, gray 50%, transparent 100%);
  border-image-slice: 1;
  background-color: var(--initial-bgColor);
  padding-top: 1em;
  margin: 1em 0;
  overflow-x: hidden;
  overflow-y: scroll;
}

.e-messages .message {
  padding: 1em;
}

.e-messages .message.mySelf {
  display: grid;
  grid-template: "date date" min-content "meta content" auto;
  grid-template-columns: 1fr auto;
  -webkit-justify-content: end;
  justify-content: end;
}

.e-messages .message:not(.mySelf) {
  display: grid;
  grid-template: "date date    date" min-content "user content meta" auto;
  grid-template-columns: min-content auto 1fr;
  -webkit-justify-content: start;
  justify-content: start;
}

.e-messages .message :where(p, .u-mediaDatas):not(:empty) {
  background-color: var(--color-base);
  border-radius: 1.5em;
  padding: 1em;
}

.e-messages .message .date {
  grid-area: date;
  -webkit-justify-self: center;
  justify-self: center;
  display: block;
  font-size: 0.7em;
  background-color: rgba(16, 44, 87, 0.1);
  border-radius: 1.5em;
  padding: 0.5em 1.5em;
  margin-bottom: 1em;
}

.e-messages .message .e-user {
  grid-area: user;
}

.e-messages .message .content {
  grid-area: content;
  max-width: 80cqw;
}

.e-messages .message .content p {
  display: inline-block;
  position: relative;
}

.e-messages .message .content p:is(:not(.mySelf *))::before {
  left: -0.75em;
}

.e-messages .message .content p:is(.mySelf *)::before {
  right: -0.75em;
  transform: scale(-1);
}

.e-messages .message .content p::before {
  content: "";
  display: block;
  width: 1.5em;
  aspect-ratio: 4/3;
  clip-path: polygon(0 50%, 100% 80%, 100% 20%);
  background-color: var(--color-base);
  position: absolute;
  top: 1em;
  z-index: 1;
}

.e-messages .message .content .u-mediaDatas {
  margin-top: 0.5em;
}

.e-messages .message .meta {
  grid-area: meta;
  -webkit-align-self: end;
  align-self: end;
  padding: 0.5em;
}

.e-messages .message .meta:is(.mySelf *) {
  text-align: right;
}

.e-messages .message .meta :where(time, span) {
  font-size: 0.8em;
  color: gray;
  white-space: nowrap;
  padding: 0.25em 0;
}

.e-messages .message .meta time {
  display: block;
}

.e-messages .message .meta span::before {
  font-family: "FontAwesome regular";
  vertical-align: baseline;
  margin-right: 0.2em;
}

.e-messages .message .meta span[data-status=unread]::before {
  content: "\f0e0";
}

.e-messages .message .meta span[data-status=read]::before {
  content: "\f2b6";
}

.e-messages footer {
  background-color: var(--initial-bgColor);
  padding: 1.5em;
  position: sticky;
  bottom: -1px;
}

.e-messages footer .u-btn {
  width: clamp(10em, 50cqw, 20em);
  margin-inline: auto;
}

.e-myMenu :where(a, label)::before {
  content: "\f578";
  color: var(--color-main);
}

.e-myMenu :where(a, label)::after {
  opacity: 0.8;
}

.e-myMenu :where(a, label) input {
  display: none;
}

.e-myMenu a[href*=List]::before {
  content: "\f0cb";
}

.e-myMenu a[href*="/create"]::before {
  content: "\f31c";
}

.e-myMenu a[href*="/list"]::before {
  content: "\f0ca";
}

.e-myMenu a[href*="/add"]::before {
  content: "\f055";
}

.e-myMenu a[href*="/favoriteList"]::before {
  content: "\f004";
}

.e-myMenu a[href*="/offerList"]::before {
  content: "\f674";
}

.e-myMenu a[href*="/appliedEntryList"]::before {
  content: "\f573";
}

.e-myMenu a[href*="/earningsmanage"]::before {
  content: "\f53c";
}

.e-myMenu a[href*="/mypage"]::before {
  content: "\e1b0";
}

.e-myMenu a[href*="/showProfile"]::before {
  content: "\f2bb";
}

.e-myMenu a[href*="/userMessageList"]::before {
  content: "\f086";
}

.e-myMenu a[href*="/mailList"]::before {
  content: "\f658";
}

.e-myMenu a[href*="/followlist"]::before {
  content: "\f4fc";
}

.e-myMenu a[href*="/followerlist"]::before {
  content: "\f234";
}

.e-myMenu a[href*="/noticeConditonList"]::before {
  content: "\f00e";
}

.e-myMenu a[href*="/commentList"]::before {
  content: "\f4ad";
}

.e-myMenu a[href*="/enteredList"]::before {
  content: "\e552";
}

.e-myMenu a[href*="/changeLoginId"]::before {
  content: "\f2c2";
}

.e-myMenu a[href*="/changePassword"]::before {
  content: "\f084";
}

.e-myMenu a[href*="/mailMagazine"]::before {
  content: "\f519";
}

.e-myMenu a[href*="/blockList"]::before {
  content: "\f505";
}

.e-myMenu a[href*="/withdraw"]::before {
  content: "\f506";
}

.e-myMenu label.add::before {
  content: "\f055";
}

.e-myMenu label.favoriteList::before {
  content: "\f004";
}

.e-myMenu label.offerList::before {
  content: "\f674";
}

.e-myMenu label.appliedEntryList::before {
  content: "\f573";
}

.e-myMenu label.earnings::before {
  content: "\f53c";
}

.e-myMenu label.stc::before {
  content: "\f0b1";
}

.e-myMenu label.str::before {
  content: "\f274";
}

.e-myMenu label.stp::before {
  content: "\f291";
}

.e-myMenu label.account::before {
  content: "\f3e0";
}

.e-myMenu label.config::before {
  content: "\f013";
}

.e-myMenu label.blog::before {
  content: "\f31c";
}

.e-myMenu label.community::before {
  content: "\f0c0";
}

.e-myMenu label.event::before {
  content: "\f784";
}

.e-myMenu label.knowledge::before {
  content: "\e4e3";
}

.e-myMenu label.sale::before {
  content: "\f46c";
}

.e-myMenu label.purchase::before {
  content: "\f09d";
}

.e-myMenu label.bank::before {
  content: "\f19c";
}

.e-myMenu label.shipping::before {
  content: "\f5a0";
}

.e-myMenu label.delivery::before {
  content: "\f0d1";
}

.e-myMenu label.area::before {
  content: "\f248";
}

.e-myMenu label::after {
  content: "\f107";
}

.e-myMenu div {
  position: relative;
  right: -1em;
}

.e-myMenu .u-openCloser:has(:checked)::after {
  color: var(--color-main);
}

.e-myMenu .current:where(label):not(:only-child) {
  margin-left: 1em;
}

.e-myMenu .current.u-openCloser::after {
  rotate: 0deg;
}

.e-myMenu .current::before {
  color: inherit;
}

.e-overlayMenu {
  container: e-overlayMenu/inline-size;
  position: relative;
  display: none;
  height: 100dvh;
  color: var(--color-gray-light);
  background-color: rgba(0, 0, 0, 0.95);
  padding: 1em;
  padding-top: 4em;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 8;
  overflow-y: auto;
}

.e-overlayMenu.open {
  display: block;
  animation-name: open;
  animation-duration: 0.5s;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
}

.e-overlayMenu.close {
  animation-name: close;
  animation-duration: 0.25s;
  animation-timing-function: ease-out;
  animation-fill-mode: forwards;
}

.e-overlayMenu :where(h2, span) {
  font-weight: normal;
  font-size: 0.9em;
  color: var(--color-gray);
}

.e-overlayMenu .header {
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
  padding: 1em;
  padding-bottom: 2em;
  margin-bottom: 2em;
}

@container e-overlayMenu (min-width: 701px) {
  .e-overlayMenu .header {
    display: -webkit-flex;
    -webkit-align-items: center;
    display: flex;
    align-items: center;
    max-width: var(--width-max-m);
    margin-inline: auto;
  }
}
.e-overlayMenu .header :where(h2, span) {
  margin-right: 0.5em;
}

.e-overlayMenu .header span {
  display: inline-block;
}

.e-overlayMenu .header a {
  padding: 0.5em;
}

.e-overlayMenu .header a.u-btn {
  color: var(--initial-color);
}

.e-overlayMenu .header a.mypage {
  font-weight: bold;
}

.e-overlayMenu .header a.mypage::before {
  font-family: "FontAwesome solid";
  content: "\e1b0";
  vertical-align: baseline;
  margin-right: 0.25em;
}

.e-overlayMenu .header a.logout {
  margin-left: auto;
  opacity: 0.7;
}

.e-overlayMenu .header a.logout::before {
  font-family: "FontAwesome solid";
  content: "\f08b";
  vertical-align: baseline;
  margin-right: 0.25em;
}

@container e-overlayMenu (min-width: 701px) {
  .e-overlayMenu .split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    max-width: var(--width-max-m);
    margin-inline: auto;
    gap: 1em;
  }
}
.e-overlayMenu .split nav {
  padding: 1em 0;
}

.e-overlayMenu .split h2 {
  padding: 0 0.5em;
}

.e-overlayMenu .split a {
  padding: 0.5em;
}

.e-overlayMenu .split a:hover {
  color: var(--color-main);
}

.e-overlayMenu .split a:not(.primary *)::before {
  font-family: "FontAwesome solid";
  content: "\f138";
  vertical-align: baseline;
  margin-right: 0.25em;
}

.e-overlayMenu .split a:is(.primary *) {
  font-weight: bold;
  font-size: 1.25em;
}

.e-overlayMenu .split a:is(.primary *)::before {
  font-family: "FontAwesome solid";
  content: "\f002";
  vertical-align: baseline;
  margin-right: 0.35em;
}

.e-overlayMenu .left {
  overflow: hidden;
}

@container e-overlayMenu (min-width: 701px) {
  .e-overlayMenu .left {
    border-right: 1px solid rgba(255, 255, 255, 0.5);
    padding-right: 1em;
  }
}
@container e-overlayMenu (min-width: 701px) {
  .e-overlayMenu .right {
    padding-left: 1em;
  }
}
.e-overlayMenu .right .lang li {
  display: inline-block;
}

.e-overlayMenu .right .lang li:not(:has(*)) {
  color: var(--color-main);
  padding: 0.5em;
}

.e-overlayMenu .right .lang li:not(:has(*))::before {
  font-family: "FontAwesome solid";
  content: "\f058";
  vertical-align: baseline;
  margin-right: 0.25em;
}

.e-overlayMenu .swiper-slide {
  width: auto;
}

.e-overlayMenu .swiper-button-next {
  right: 0;
}

.e-overlayMenu .swiper-button-next::after {
  font-size: 2em;
}

.e-searchCondition {
  display: -webkit-flex;
  -webkit-flex-wrap: wrap;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em;
  border-top: 1px solid var(--color-border-gray);
  border-bottom: 1px solid var(--color-border-gray);
  padding: 1em;
  margin: 1em 0;
  margin-bottom: 2em;
}

.e-searchCondition dl {
  padding: 0.5em;
}

.e-searchCondition dt {
  font-size: 0.9em;
  color: var(--color-gray);
}

.e-switchContents:has([value="0"]:checked) [data-target="0"] {
  display: block;
  animation-name: open;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
}

.e-switchContents:has([value="1"]:checked) [data-target="1"] {
  display: block;
  animation-name: open;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
}

.e-switchContents:has([value="2"]:checked) [data-target="2"] {
  display: block;
  animation-name: open;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
}

.e-switchContents:has([value="3"]:checked) [data-target="3"] {
  display: block;
  animation-name: open;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
}

.e-switchContents:has([value="4"]:checked) [data-target="4"] {
  display: block;
  animation-name: open;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
}

.e-switchContents:has([value="5"]:checked) [data-target="5"] {
  display: block;
  animation-name: open;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
}

.e-switchContents:has([value="6"]:checked) [data-target="6"] {
  display: block;
  animation-name: open;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
}

.e-switchContents:has([value="7"]:checked) [data-target="7"] {
  display: block;
  animation-name: open;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
}

.e-switchContents:has([value="8"]:checked) [data-target="8"] {
  display: block;
  animation-name: open;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
}

.e-switchContents:has([value="9"]:checked) [data-target="9"] {
  display: block;
  animation-name: open;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
}

.e-switchContents .switch .swiper-slide {
  width: auto;
}

.e-switchContents .switch label {
  padding: 0.5em 1em;
}

.e-switchContents .switch label:has(:disabled) {
  color: var(--color-gray);
  cursor: auto;
}

.e-switchContents .switch label [type=radio] {
  display: none;
}

.e-switchContents [data-target] {
  display: none;
  opacity: 0;
  position: relative;
  top: -5vh;
}

/* tpl */
/* _component */
/* freespace */
/* _backend */
/* _area */
/* _auth */
/* _bank */
/* _blog */
/* _blog/_blogpost */
/* _blog/_blogmanage */
/* _community */
/* _community/_community */
/* _community/_topic */
/* _community/_event */
/* _community/_member */
/* _community/_comment */
/* _community/_communitymanage */
/* _earnings */
/* _event */
/* _event/_event */
/* _event/_eventmanage */
/* _knowledge */
/* _knowledge/_knowledge */
/* _knowledge/_knowledgemanage */
/* _mypage */
/* _mypage/_config */
/* _notification */
/* _purchase */
/* _purchase/_cart */
/* _purchase/_purchasemanage */
/* _questionnaire */
/* _register */
/* _reset_password */
/* _sale */
/* _stc */
/* _stc/_case */
._stc._case._embed_content {
  container: _container/inline-size;
  position: relative;
  height: 100%;
  background-color: white;
  border: 1px solid white;
  border-radius: var(--radius-s);
  margin-inline: auto;
  position: relative;
  overflow: hidden;
}

._stc._case._embed_content .pj-checkApplyStatus {
  display: block;
  font-weight: bold;
  font-size: 0.8em;
  background-color: rgba(255, 255, 255, 0.8);
  text-align: center;
  padding: 0.25em;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
}

._stc._case._embed_content > ._grid {
  height: inherit;
}

@container _container (max-width: 500px) {
  ._stc._case._embed_content > ._grid {
    display: grid;
    grid-template: "image" auto "title" auto "user" auto "excerpt" auto "categories" auto "footer" 1fr;
  }
}
@container _container (min-width: 501px) {
  ._stc._case._embed_content > ._grid {
    display: grid;
    grid-template: "image title" auto "image user" auto "image excerpt" auto "image categories" auto "image footer" 1fr;
    grid-template-columns: 35% 1fr;
  }
}
._stc._case._embed_content .image {
  grid-area: image;
  aspect-ratio: 4/3;
  position: relative;
}

._stc._case._embed_content .image[src*=noImage] {
  object-fit: contain;
  padding: 15%;
}

._stc._case._embed_content .image img {
  width: 100%;
  height: 100%;
}

._stc._case._embed_content .image .pj-caseType {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 6px;
  border-bottom-left-radius: 0;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

._stc._case._embed_content .content {
  display: grid;
  grid-template-columns: subgrid;
  grid-template-rows: subgrid;
  padding: 1em;
}

@container _container (max-width: 500px) {
  ._stc._case._embed_content .content {
    grid-column: title/footer;
    grid-row: 2/-1;
  }
}
@container _container (min-width: 501px) {
  ._stc._case._embed_content .content {
    grid-column: title/footer;
    grid-row: 1/-1;
  }
}
._stc._case._embed_content .title {
  grid-area: title;
  font-size: 1.35em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
}

._stc._case._embed_content .e-user {
  grid-area: user;
  margin: 0.5em 0;
}

._stc._case._embed_content .e-user img {
  width: 2em;
}

._stc._case._embed_content .excerpt {
  grid-area: excerpt;
  font-size: 0.9em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  margin: 0.5em 0;
}

._stc._case._embed_content .categories {
  grid-area: categories;
  display: -webkit-flex;
  display: flex;
  gap: 0.25em;
  font-size: 0.8em;
  margin: 0.5em 0;
}

._stc._case._embed_content .categories span {
  display: inline-block;
}

._stc._case._embed_content .categories span::before {
  font-family: "FontAwesome solid";
  content: "#";
  vertical-align: baseline;
}

._stc._case._embed_content footer {
  grid-area: footer;
  display: -webkit-flex;
  -webkit-align-items: end;
  display: flex;
  align-items: end;
  gap: 0.5em;
  margin-top: 0.5em;
}

._stc._case._embed_content footer * {
  line-height: 1.5rem;
}

._stc._case._embed_content footer .price {
  margin-right: 1em;
}

._stc._case._embed_content footer .price b {
  font-weight: bold;
  font-size: 1.15em;
}

._stc._case._embed_content footer .price span {
  font-family: "Oswald", sans-serif;
  font-optical-sizing: auto;
  line-height: 1em;
  font-size: 1.5em;
}

._stc._case._embed_content footer dl {
  display: -webkit-flex;
  -webkit-align-items: center;
  display: flex;
  align-items: center;
  gap: 0.5em;
  margin-right: 1em;
}

._stc._case._embed_content footer dt {
  font-size: 0.8em;
  line-height: 1rem;
}

._stc._case._embed_content footer dt::before {
  font-family: "FontAwesome regular";
  content: "\f274";
  vertical-align: baseline;
  margin-right: 0.25em;
}

._stc._case._embed_content footer .arrow {
  margin-left: auto;
}

._stc._case._embed_content .js_favorite {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  z-index: 1;
}

._stc._case._embed_contentHeader ._grid {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.5em;
  -webkit-align-items: center;
  align-items: center;
}

._stc._case._embed_contentHeader img {
  width: 3em;
  aspect-ratio: 4/3;
  border-radius: var(--radius-s);
}

._stc._case._embed_contentHeader .title {
  font-size: 1.35em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
}

/* _stc/_casemanage */
/* _stp */
/* _stp/_product */
/* _stp/_productmanage */
/* _str */
/* _str/_reserve */
/* _str/_reservemanage */
/* _shipping */
/* _sitetop */
/* _sitetop/_index */
/* _special */
/* _user */
