@charset "UTF-8";
@layer project {
  @layer parts;
  @layer content;
}
@layer project {
  :root {
    --width-logo: clamp(75px, 25cqw, 100px);
    --color-gray-light: #F7F7F7;
    --color-gray-dark: #4D4D4D;
    --color-ok: #4D93BC;
    --color-main: #4D93BC;
    --color-main-on: white;
    --color-sub: #D46B3A;
    --color-sub-on: white;
    --color-tertiary: #C4995A;
    --color-tertiary-on: white;
    --color-a: var(--color-main);
    --grad: linear-gradient(to right, #FBF0EB 0%, #EDF4F8 100%), -webkit-linear-gradient(left, #FBF0EB 0%, #EDF4F8 100%);
    --color-border-ng: #fcb1a8;
    --color-border-main: rgba(77, 147, 188, 0.5);
    --color-border-sub: rgba(212, 107, 58, 0.5);
    --initial-color: #4D4D4D;
    /* be adjust */
  }
  @layer parts {
    /* font */
    /* animation */
    @keyframes example {
      from {
        transform: 0 0;
      }
      to {
        transform: 1 1;
      }
    }
    @keyframes active {
      from {
        transform: scaleY(0);
      }
      to {
        transform: scaleY(1);
      }
    }
    @keyframes active-clone {
      from {
        transform: scaleY(0);
        max-height: 0;
      }
      to {
        transform: scaleY(1);
        max-height: 100%;
      }
    }
    /* common */
    @media (min-width: 1451px) {
      body {
        overflow-x: hidden;
      }
    }
    body.fixed {
      overflow-y: hidden;
    }
    :where(td, dd):is(._f *) ul.flex {
      display: -webkit-flex;
      -webkit-flex-wrap: wrap;
      display: flex;
      flex-wrap: wrap;
      gap: 0.15em;
    }
    :where(td, dd):is(._f *) ul.list {
      padding-left: 1.5em;
    }
    :where(td, dd):is(._f *) li:is(ul.flex *) {
      font-size: 0.9em;
      padding: 0.15em 0;
    }
    :where(td, dd):is(._f *) li:is(ul.flex *):not(:last-of-type)::after {
      content: "・";
    }
    :where(td, dd):is(._f *) li:is(ul.list *) {
      list-style-type: disc;
    }
    /* _ */
    /* p */
    .p-clone a {
      display: -webkit-flex;
      -webkit-align-items: center;
      display: flex;
      align-items: center;
      font-size: min(0.9em, 5cqw);
      color: var(--color-main);
      border-bottom: 1px solid var(--color-border-gray);
      padding: 0.75em 1em;
    }
    .p-clone a :first-child {
      border-top: 1px solid var(--color-border-gray);
    }
    .p-clone a:not(.unfold)::after {
      font-family: "FontAwesome solid";
      content: "\f061";
      vertical-align: baseline;
      color: var(--color-sub);
      margin-left: auto;
    }
    .p-clone a:is(.unfold) {
      cursor: pointer;
    }
    .p-clone a:is(.unfold)::after {
      font-family: "FontAwesome solid";
      content: "+";
      vertical-align: baseline;
      color: var(--color-sub);
      margin-left: auto;
    }
    .p-clone .fold div {
      transform-origin: top;
    }
    .p-clone .fold div:not(.active) {
      max-height: 0;
      transform: scaleY(0);
    }
    .p-clone .fold div:is(.active) {
      animation-name: active-clone;
      animation-duration: 0.2s;
      animation-fill-mode: forwards;
      display: block;
    }
    .p-clone .fold div a {
      color: var(--initial-color);
      margin-left: 2em;
    }
    @container _container (min-width: 501px) {
      .p-thNowrap tbody {
        grid-template-columns: auto auto;
      }
    }
    @container _container (min-width: 501px) {
      .p-thNowrap th {
        white-space: nowrap;
      }
    }
    @container _container (min-width: 501px) {
      .p-thNowrap td {
        width: initial;
      }
    }
    /* js */
    /* m */
    /* form */
    /* util */
    table.u.col td .e-contentHeader {
      container: unset;
      container: initial;
    }
    .u-btn {
      border-radius: 2em;
      padding-top: 0.75em;
      padding-bottom: 0.75em;
    }
    .u-btn.tertiaryPrimary {
      color: var(--color-tertiary-on);
      background-color: var(--color-tertiary);
    }
    .u-note {
      -webkit-flex-wrap: nowrap;
      flex-wrap: nowrap;
    }
    /* embed */
    .e-messages .message {
      padding: 1em;
    }
    .e-messages .message:not(.mySelf) {
      display: grid;
      grid-template: "date    date" min-content "user    ." auto "content meta" auto;
      grid-template-columns: auto 1fr;
      -webkit-justify-content: start;
      justify-content: start;
    }
    .e-messages .e-user {
      margin-bottom: 0.5em;
    }
    .e-messages .userImg {
      width: 2.5em;
    }
    .e-messages .u-btn {
      width: clamp(12em, 50cqw, 20em);
    }
    .e-overlayMenu {
      color: var(--initial-color);
      background: var(--grad);
      padding: 0;
      padding-top: 15vh;
    }
    .e-overlayMenu .p-clone {
      max-width: 600px;
      margin-right: auto;
      margin-left: auto;
      padding: 1em max(1em, 2.5cqw);
    }
    .e-overlayMenu .t-cta {
      margin-top: 5vh;
    }
    .e-overlayMenu .t-cta .head span {
      color: inherit;
    }
    .e-user dl {
      display: -webkit-flex;
      -webkit-align-items: center;
      display: flex;
      align-items: center;
      gap: 0.5em;
      font-size: 0.9rem;
    }
    /* tpl */
    .t-cta {
      color: var(--color-main-on);
      background-color: var(--color-main);
      border-top-left-radius: 75px;
      text-align: center;
      padding: 10vh 0;
      margin-top: 10vh;
    }
    .t-cta .c {
      container: _container/inline-size;
      position: relative;
      max-width: var(--width-max-m);
      margin-right: auto;
      margin-left: auto;
    }
    .t-cta .head {
      font-weight: normal;
    }
    .t-cta .head i {
      transform: translateX(-0.125em);
    }
    .t-cta .head i {
      display: block;
      font-size: max(2.5em, 5cqw);
      letter-spacing: 0.25em;
    }
    .t-cta p {
      font-size: 1.25em;
      margin: 2.5em auto;
      word-break: keep-all;
      line-height: 1.7;
    }
    @container _container (min-width: 901px) {
      .t-cta .flex {
        display: -webkit-flex;
        -webkit-justify-content: center;
        display: flex;
        justify-content: center;
      }
    }
    .t-cta .flex > * {
      display: grid;
      -webkit-place-items: center;
      place-items: center;
      padding: 0 1em;
    }
    @container _container (min-width: 901px) {
      .t-cta .flex > *:not(:last-child) {
        border-right: 1px solid rgba(255, 255, 255, 0.5);
      }
    }
    @container _container (max-width: 900px) {
      .t-cta address:first-of-type::after {
        content: "";
        display: block;
        width: 2em;
        height: 1px;
        background-color: white;
        margin: 2em auto;
      }
    }
    .t-cta address dl {
      display: -webkit-flex;
      -webkit-flex-wrap: wrap;
      -webkit-align-items: center;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
    }
    .t-cta address dl.tel {
      font-weight: bold;
      font-size: max(1.25em, 3cqw);
    }
    .t-cta address dl.datetime {
      margin-bottom: 1em;
    }
    .t-cta address dl.datetime::before {
      content: "(";
      margin-right: 0.25em;
    }
    .t-cta address dl.datetime::after {
      content: ")";
      margin-left: 0.25em;
    }
    .t-cta address dl.mail {
      font-weight: bold;
      font-size: min(1.1em, 4cqw);
    }
    .t-cta address dl.mail a {
      word-break: break-word;
    }
    .t-cta address dt::after {
      content: "：";
    }
    .t-cta address small {
      display: block;
      word-break: keep-all;
      margin: 0.25em 0;
    }
    .t-cta address small::before {
      content: "※";
    }
    @container _container (max-width: 900px) {
      .t-cta .u-btn {
        width: min(90%, 20em);
      }
    }
    .t-cta .u-btn::after {
      font-family: "FontAwesome solid";
      content: "\f061";
      vertical-align: baseline;
    }
    @container _container (max-width: 900px) {
      .t-cta .tertiaryPrimary {
        margin-top: 1em;
      }
    }
    .t-logo {
      container: _container/inline-size;
      position: relative;
      display: block;
      display: none;
    }
    .t-logo img {
      width: 100%;
    }
    .t-logo strong {
      display: block;
      font-size: 8cqw;
      text-align: center;
      margin-top: 1em;
    }
    .t-logo span {
      display: block;
    }
    .t-globalHeader {
      display: -webkit-flex;
      -webkit-justify-content: space-between;
      -webkit-align-items: baseline;
      display: flex;
      justify-content: space-between;
      align-items: baseline;
      background-color: #FFF;
      padding: 0.25em 0.5em;
    }
    .t-globalHeader a {
      font-size: 0.9em;
      padding: 0.5em;
    }
    .t-globalHeader [href*="www.kankyo"] {
      width: 7em;
    }
    .t-globalHeader [href*="www.metro"]::after {
      font-family: "FontAwesome solid";
      content: "\f105";
      vertical-align: baseline;
      margin-left: 0.5em;
    }
    .t-siteFooter {
      color: var(--initial-color);
      background-color: var(--color-gray-light);
      padding-top: 7.5vh;
    }
    .t-siteFooter .flex {
      container: _container/inline-size;
      position: relative;
    }
    @container _container (min-width: 1001px) {
      .t-siteFooter .flex {
        display: -webkit-flex;
        -webkit-justify-content: center;
        -webkit-align-items: start;
        display: flex;
        justify-content: center;
        align-items: start;
        gap: max(2em, 2.5cqw);
      }
    }
    .t-siteFooter h2 {
      width: clamp(125px, 50cqw, 175px);
      padding: 0 2em;
    }
    @container _container (max-width: 1000px) {
      .t-siteFooter h2 {
        margin: 0 auto 5vh;
      }
    }
    .t-siteFooter .p-clone {
      padding: 0 2em;
    }
    @container _container (min-width: 601px) {
      .t-siteFooter .p-clone {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 0 1em;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-align-items: start;
        align-items: start;
      }
    }
    .t-siteFooter .p-clone a {
      word-break: keep-all;
      gap: 1em;
    }
    .t-siteFooter .p-clone :where(.mypage, .normal, .custom01, .logout) {
      display: none;
    }
    .t-siteFooter .auth {
      max-width: 30em;
      text-align: center;
      background-color: white;
      border-radius: var(--radius-l);
      padding: 2em;
    }
    @container _container (max-width: 1000px) {
      .t-siteFooter .auth {
        margin: 5vh auto 0;
      }
    }
    .t-siteFooter .auth h3 {
      color: var(--color-main);
      letter-spacing: 0.1em;
      margin-bottom: 1em;
    }
    .t-siteFooter .auth a {
      max-width: 20em;
      margin-inline: auto;
    }
    .t-siteFooter .auth a:first-of-type {
      margin-bottom: 1em;
    }
    .t-siteFooter .auth a::after {
      font-family: "FontAwesome solid";
      content: "\f061";
      vertical-align: baseline;
      margin-left: 1em;
    }
    .t-siteFooter .temps {
      max-width: 800px;
      margin-right: auto;
      margin-left: auto;
      color: var(--color-tertiary-on);
      background-color: var(--color-tertiary);
      border-radius: var(--radius-m);
      padding: 2em;
      margin-top: 5vh;
    }
    .t-siteFooter .temps a {
      display: block;
      padding: 0.5em;
    }
    .t-siteFooter p {
      font-size: small;
      word-break: break-word;
      text-align: center;
      padding: 1em;
      margin-top: 5vh;
    }
    .t-siteHeader {
      display: -webkit-flex;
      -webkit-justify-content: end;
      -webkit-align-items: center;
      display: flex;
      justify-content: end;
      align-items: center;
      min-height: 80px;
      background: var(--grad);
      padding-left: calc(var(--width-logo) + 1em * 2);
      padding-left: 1em;
    }
    @container _container (max-width: 1450px) {
      .t-siteHeader {
        min-height: 60px;
      }
    }
    @container _container (min-width: 1451px) {
      .t-siteHeader {
        min-height: 80px;
      }
    }
    .t-siteHeader.open {
      color: var(--initial-color);
    }
    .t-siteHeader h1 {
      width: var(--width-logo);
      position: absolute;
      top: 1em;
      left: 1em;
    }
    .t-siteHeader h1:is(.open *) {
      width: 75px;
    }
    .t-siteHeader h1 strong:is(.open *) {
      display: none;
    }
    .t-siteHeader nav {
      display: -webkit-flex;
      -webkit-align-items: center;
      display: flex;
      align-items: center;
    }
    @container _container (max-width: 1450px) {
      .t-siteHeader nav {
        display: none;
      }
    }
    .t-siteHeader nav > * {
      border-left: 1px dotted var(--color-border-gray);
    }
    .t-siteHeader nav a {
      display: -webkit-flex;
      -webkit-align-items: center;
      display: flex;
      align-items: center;
      word-break: keep-all;
      padding: 0.5em 0.75em;
    }
    .t-siteHeader .visible {
      font-size: min(0.9em, 5cqw);
      color: var(--color-main);
    }
    .t-siteHeader :is(.qa, .mypage, .normal, .custom01, .event, .logout) {
      display: none;
    }
    .t-siteHeader .fold {
      position: relative;
    }
    .t-siteHeader .fold .unfold {
      cursor: pointer;
    }
    .t-siteHeader .fold .unfold::after {
      font-family: "FontAwesome solid";
      content: "\f078";
      vertical-align: baseline;
      color: var(--color-sub);
      margin-left: 0.5em;
    }
    .t-siteHeader .fold div {
      background-color: white;
      border-radius: var(--radius-l);
      padding: 1em;
      position: absolute;
      top: 100%;
      left: 0.75em;
      z-index: 1;
      transform-origin: top;
    }
    .t-siteHeader .fold div:not(.active) {
      transform: scaleY(0);
    }
    .t-siteHeader .fold div:is(.active) {
      animation-name: active;
      animation-duration: 0.2s;
      animation-fill-mode: forwards;
    }
    .t-siteHeader .fold div.overflow {
      left: unset;
      right: 0;
    }
    .t-siteHeader .fold div a {
      -webkit-justify-content: space-between;
      justify-content: space-between;
      width: 20em;
      font-weight: bold;
      font-size: 0.9em;
    }
    .t-siteHeader .fold div a:not(:last-of-type) {
      border-bottom: 1px solid var(--color-border-gray);
    }
    .t-siteHeader .fold div a::after {
      font-family: "FontAwesome solid";
      content: "\f061";
      vertical-align: baseline;
      color: var(--color-sub);
    }
    .t-siteHeader [href*="/login"] {
      font-size: min(0.9em, 5cqw);
      margin-right: 1em;
    }
    .t-siteHeader [href*="/login"]::after {
      font-family: "FontAwesome solid";
      content: "\f061";
      vertical-align: baseline;
    }
    .t-siteHeader .overlayMenuOpenClose {
      -webkit-align-self: stretch;
      align-self: stretch;
      display: grid;
      grid-template-columns: 1fr;
      grid-template-rows: none;
      -webkit-place-items: center;
      place-items: center;
      padding: 0.5em 0.75em;
    }
    .t-siteHeader .overlayMenuOpenClose:is(.open *) {
      background-color: var(--color-sub);
    }
    .t-siteHeader .overlayMenuOpenClose:is(.open *)::before {
      rotate: 45deg;
      translate: 0 0;
    }
    .t-siteHeader .overlayMenuOpenClose:is(.open *)::after {
      rotate: -45deg;
      translate: 0 0;
    }
    .t-siteHeader .overlayMenuOpenClose:is(.open *) span {
      display: none;
    }
    .t-siteHeader .overlayMenuOpenClose::before {
      content: "";
      grid-area: 1/-1/1/-1;
      display: block;
      width: 24px;
      background-color: white;
      border-radius: 1px;
      height: 2px;
    }
    .t-siteHeader .overlayMenuOpenClose::after {
      content: "";
      grid-area: 1/-1/1/-1;
      display: block;
      width: 24px;
      background-color: white;
      border-radius: 1px;
      height: 2px;
    }
    .t-siteHeader .overlayMenuOpenClose::before {
      translate: 0 8px;
    }
    .t-siteHeader .overlayMenuOpenClose::after {
      translate: 0 -8px;
    }
    .t-siteHeader .overlayMenuOpenClose span {
      grid-area: 1/-1/1/-1;
      display: block;
      width: 24px;
      background-color: white;
      border-radius: 1px;
      height: 2px;
    }
    /* _component */
    :where(._user, ._mypage):where(._info, ._show) article {
      max-width: var(--width-max-m);
      margin-inline: auto;
    }
    :where(._user, ._mypage):where(._info, ._show) article .pageHeader {
      width: unset;
      margin-inline: unset;
    }
    :where(._user, ._mypage):where(._info, ._show) article .e-switchContents [data-target="1"] {
      padding: 0;
    }
  }
  @layer content {
    /* 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._event._embed_content {
      display: grid;
      grid-template-columns: auto 1fr;
      -webkit-place-content: center;
      place-content: center;
      width: 100%;
    }
    ._event._event._embed_content .datetime {
      display: -webkit-flex;
      -webkit-flex-direction: column;
      -webkit-justify-content: center;
      -webkit-align-items: center;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      color: var(--color-main-on);
      background-color: var(--color-main);
      border-top-left-radius: var(--radius-l);
      border-bottom-left-radius: var(--radius-l);
      white-space: nowrap;
      text-align: center;
      padding: 1.5em 1em;
    }
    ._event._event._embed_content .day {
      display: block;
      font-weight: bold;
      font-size: 1.5em;
    }
    ._event._event._embed_content .day small {
      font-weight: bold;
      font-size: 0.9rem;
    }
    ._event._event._embed_content .day small::before {
      content: "(";
      margin-right: 0.1em;
    }
    ._event._event._embed_content .day small::after {
      content: ")";
      margin-left: 0.1em;
    }
    ._event._event._embed_content .summary {
      -webkit-flex: 1 1 auto;
      flex: 1 1 auto;
      display: -webkit-flex;
      -webkit-flex-direction: column;
      -webkit-justify-content: center;
      display: flex;
      flex-direction: column;
      justify-content: center;
      background-color: var(--color-gray-light);
      padding: 1em;
    }
    ._event._event._embed_content .summary h3 {
      font-size: 1rem;
      margin-bottom: 0.5em;
    }
    ._event._event._embed_content .summary dl {
      display: -webkit-flex;
      -webkit-align-items: center;
      display: flex;
      align-items: center;
      gap: 0.5em;
      font-size: 0.9em;
    }
    ._event._event._embed_content .summary dt {
      font-size: 0.9em;
      color: var(--color-main);
      background-color: white;
      border-radius: var(--radius-l);
      white-space: nowrap;
      padding: 0 0.5em;
    }
    ._event._event._embed_content .summary dd {
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 1;
      overflow: hidden;
      font-weight: bold;
    }
    ._event._event._embed_content .summary p {
      font-size: 0.9em;
      margin-top: 0.5em;
    }
    ._event._event._embed_content .summary p a {
      color: var(--color-main);
      text-decoration: underline;
      margin: 0 0.15em;
    }
    /* _event/_eventmanage */
    /* _knowledge */
    /* _knowledge/_knowledge */
    /* _knowledge/_knowledgemanage */
    /* _mypage */
    ._mypage._tpl_editProfile tr.hide {
      display: none;
    }
    ._mypage._tpl_editProfile tr:is([data-valid="0"]) {
      border-top-color: transparent;
    }
    ._mypage._tpl_editProfile tr:has(+ [data-valid="0"]) {
      border-bottom: 1px solid var(--color-border-ng);
    }
    @container _container (min-width: 501px) {
      ._mypage._employee.info h2 {
        display: -webkit-flex;
        -webkit-align-items: center;
        display: flex;
        align-items: center;
        gap: 1em;
      }
    }
    ._mypage._employee.info h2 img {
      width: 6em;
      padding: 0.5em;
    }
    ._mypage._employee.info ._universalMediadata {
      display: block;
      text-align: center;
      margin: 2em 0;
    }
    ._mypage._employee.info ._universalMediadata img {
      border-radius: var(--radius-m);
    }
    ._mypage._employee.info .u tbody {
      background-color: transparent;
    }
    ._mypage._index ._f :where(a) {
      margin: 2em 0;
    }
    ._mypage._index ._f [href*=_switch_user] {
      width: fit-content;
    }
    ._mypage._index ._f [href*=_switch_user]::before {
      font-family: "FontAwesome solid";
      content: "\f363";
      vertical-align: baseline;
    }
    ._mypage._index ._f nav a {
      font-weight: bold;
      font-size: 1.1em;
      border-radius: var(--radius-l);
      padding: 2em;
      margin: 2em 0;
    }
    ._mypage._index ._f nav a::before {
      font-family: "FontAwesome solid";
      vertical-align: baseline;
    }
    ._mypage._index ._f nav a.kubun::before {
      content: "\e494";
    }
    ._mypage._index ._f nav a.employee::before {
      content: "\f234";
    }
    ._mypage._list .header ruby {
      font-size: 0.9em;
      margin-botttom: 0.25em;
    }
    ._mypage._list .header b {
      display: block;
      font-size: 1.1em;
      letter-spacing: 0.2em;
    }
    /* _mypage/_config */
    /* _notification */
    /* _purchase */
    /* _purchase/_cart */
    /* _purchase/_purchasemanage */
    /* _questionnaire */
    /* _register */
    ._register._tpl_addNote {
      font-size: 0.9em;
    }
    ._register._tpl_addNote .u-note {
      -webkit-justify-content: center;
      justify-content: center;
    }
    ._register._tpl_addNote ul {
      max-width: 20em;
      margin-right: auto;
      margin-left: auto;
    }
    ._register._tpl_addNote li {
      padding: 0.15em 0;
    }
    ._register._tpl_addNote small {
      display: block;
      word-break: keep-all;
      text-align: center;
      margin-top: 1em;
    }
    ._register._tpl_addNote small::before {
      content: "※";
    }
    /* _reset_password */
    /* _sale */
    /* _stc */
    /* _stc/_case */
    ._stc._case._embed_contentHeader > ._grid {
      gap: 0;
    }
    ._stc._case._index ._d {
      padding-top: 5vh;
    }
    ._stc._case._index ._f dl {
      display: -webkit-flex;
      -webkit-flex-wrap: wrap;
      -webkit-align-items: baseline;
      display: flex;
      flex-wrap: wrap;
      align-items: baseline;
      gap: 1em;
      padding: 1em;
      margin-bottom: 1em;
    }
    ._stc._case._index ._f dt::before {
      font-family: "FontAwesome solid";
      content: "#";
      vertical-align: baseline;
      margin-right: 0.25em;
    }
    ._stc._case._index ._f dd {
      font-weight: bold;
      font-size: 1.5em;
      color: var(--color-main);
    }
    /* _stc/_casemanage */
    ._stc._casemanage._tpl_memo header dt {
      font-size: 0.9em;
    }
    ._stc._casemanage._approval_report tbody {
      grid-template-columns: auto 1fr;
    }
    ._stc._casemanage._approval_report th {
      white-space: nowrap;
    }
    ._stc._casemanage._approval_report td {
      width: initial;
    }
    ._stc._casemanage._approval_report [readonly] {
      width: 4.5em;
      font-weight: bold;
      border: none;
      outline: none;
    }
    ._stc._casemanage._approval_report small {
      margin-left: 0;
    }
    ._stc._casemanage._entryList:not(.admin) ._f li {
      display: contents;
    }
    ._stc._casemanage._entryList:not(.admin) ._f li:not(:first-of-type) thead {
      display: none;
    }
    ._stc._casemanage._entryList:is(.admin) ._f li {
      padding: 5vh 0;
    }
    ._stc._casemanage._entryList:is(.admin) ._f li:first-of-type {
      padding-top: 0;
    }
    ._stc._casemanage._entryList:is(.admin) ._f header dl {
      display: -webkit-flex;
      -webkit-align-items: center;
      display: flex;
      align-items: center;
      gap: 0.5em;
    }
    ._stc._casemanage._entryList:is(.admin) ._f header dt {
      font-size: small;
    }
    ._stc._casemanage._entryList:is(.admin) ._f .memo {
      display: -webkit-flex;
      -webkit-align-items: center;
      display: flex;
      align-items: center;
      gap: 0.5em;
      padding: 0.5em 0;
    }
    ._stc._casemanage._entryList:is(.admin) ._f .memo dt {
      font-size: small;
      white-space: nowrap;
    }
    ._stc._casemanage._entryList:is(.admin) ._f .memo p {
      font-size: 0.9em;
      border: 1px solid var(--color-border-gray);
      border-radius: var(--radius-m);
      padding: 1em;
    }
    ._stc._casemanage._entryList:is(.admin) ._f td em {
      font-weight: bold;
    }
    ._stc._casemanage._entryList:is(.admin) ._f td span {
      display: block;
    }
    ._stc._casemanage._entryList:is(.admin) ._f td .yet {
      color: var(--color-gray);
    }
    ._stc._casemanage._entryList:is(.admin) ._f .u-btn {
      width: min(18em, 100%);
      margin: 2em auto;
    }
    ._stc._casemanage._room ._f ._embed_contentHeader {
      padding: 2.5vh 0;
    }
    ._stc._casemanage._room ._f ._embed_contentHeader h2 {
      font-size: min(1.75em, 4.5cqw);
    }
    ._stc._casemanage._room ._f .u-tab label:has(:checked) {
      background-color: white;
    }
    ._stc._casemanage._room ._f .e-fold :where(.unfold, .fold) {
      color: var(--color-main);
    }
    ._stc._casemanage._room ._f :where(.sections > section) {
      padding: 1em 0;
      margin-bottom: 1em;
    }
    ._stc._casemanage._room ._f :where(.sections > section):first-of-type {
      margin-top: 5vh;
    }
    ._stc._casemanage._room ._f :where(.sections > section):not(:last-of-type)::after {
      content: "";
      display: block;
      width: 20px;
      height: 1px;
      background-color: var(--color-main);
      margin: 5vh auto;
    }
    ._stc._casemanage._room ._f :where(.case) .u-btn {
      margin-top: 1em;
    }
    ._stc._casemanage._room ._f .dates span {
      display: block;
      padding: 0.5em;
      text-align: center;
    }
    ._stc._casemanage._room ._f .dates span:is(.yet) {
      padding: 0.5em;
    }
    ._stc._casemanage._room ._f .dates span:not(.yet) {
      font-weight: bold;
      font-size: 1.1em;
      padding: 1em 0.5em;
    }
    ._stc._casemanage._room ._f .dates [data-target="1"] section {
      margin-top: 2em;
    }
    @container _container (max-width: 400px) {
      ._stc._casemanage._room ._f .dates [href*="app.box"] {
        font-size: 0.9em;
      }
    }
    ._stc._casemanage._room ._f .dates [href*="app.box"]::after {
      font-family: "FontAwesome solid";
      content: "\f56d";
      vertical-align: baseline;
      margin-left: 0.5em;
    }
    ._stc._casemanage._room ._f .concierge section {
      margin: 2.5vh 0;
    }
    ._stc._casemanage._room ._f .concierge h4 {
      font-size: 1.1em;
      margin-bottom: 1em;
    }
    ._stc._casemanage._room ._f .concierge th:not(:has(.yet)) * {
      color: var(--initial-color);
    }
    ._stc._casemanage._room ._f .concierge th em {
      display: block;
      font-weight: bold;
      font-size: 1.25em;
      margin-bottom: 0.5em;
    }
    ._stc._casemanage._room ._f .concierge th span {
      display: block;
    }
    /* _stp */
    /* _stp/_product */
    /* _stp/_productmanage */
    /* _str */
    /* _str/_reserve */
    /* _str/_reservemanage */
    /* _shipping */
    /* _sitetop */
    @container _container (min-width: 601px) {
      ._sitetop._embed_about {
        display: -webkit-flex;
        display: flex;
        gap: 2em;
      }
    }
    ._sitetop._embed_about figure {
      text-align: center;
    }
    @container _container (min-width: 601px) {
      ._sitetop._embed_about figure {
        -webkit-flex: 0 0 auto;
        flex: 0 0 auto;
        width: min(400px, 25cqw);
      }
    }
    ._sitetop._embed_about img {
      max-width: min(300px, 100%);
    }
    ._sitetop._embed_about div {
      -webkit-flex: 1 1 auto;
      flex: 1 1 auto;
    }
    ._sitetop._embed_about h2 {
      margin: 1em 0 2em;
    }
    ._sitetop._embed_about h2 i {
      font-weight: normal;
      color: var(--color-tertiary);
    }
    ._sitetop._embed_about h2 span {
      display: block;
      font-size: min(1.75em, 4.5cqw);
      color: var(--color-main);
      margin-top: 0.5rem;
    }
    ._sitetop._embed_about p b {
      color: var(--color-main);
    }
    /* _sitetop/_index */
    ._sitetop._index ._d .mv {
      display: grid;
      grid-template-columns: none;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-align-items: center;
      align-items: center;
      padding: 10vh 2.5vw;
    }
    @container _container (max-width: 800px) {
      ._sitetop._index ._d .flex {
        text-align: center;
      }
    }
    @container _container (min-width: 801px) {
      ._sitetop._index ._d .flex {
        display: -webkit-flex;
        -webkit-align-items: center;
        display: flex;
        align-items: center;
      }
    }
    ._sitetop._index ._d figure {
      width: clamp(200px, 25cqw, 300px);
      margin-inline: auto;
    }
    ._sitetop._index ._d h1 {
      grid-column: 1;
      grid-row: 1;
      font-size: min(1.75em, 5cqw);
    }
    ._sitetop._index ._d h1 span {
      display: block;
      line-height: 2;
      word-break: keep-all;
    }
    :where(._sitetop._index ._f > section) {
      padding: 10vh 5vw;
    }
    ._sitetop._index ._f :where(p) {
      line-height: 2.25;
    }
    ._sitetop._index ._f .about {
      max-width: 1200px;
      margin-right: auto;
      margin-left: auto;
      padding: 10vh 5vw 0;
    }
    ._sitetop._index ._f .about ._embed_about {
      padding: 5vh 0;
    }
    ._sitetop._index ._f .about ._embed_about:not(:first-of-type) h2 i {
      display: none;
    }
    ._sitetop._index ._f :where(.news, .event, .qa, .flow) h2 {
      white-space: nowrap;
    }
    @container _container (min-width: 701px) {
      ._sitetop._index ._f :where(.news, .event, .qa, .flow) h2 {
        width: min(200px, 20cqw);
      }
    }
    @container _container (max-width: 700px) {
      ._sitetop._index ._f :where(.news, .event, .qa, .flow) h2 {
        text-align: center;
        margin-bottom: 2em;
      }
    }
    ._sitetop._index ._f :where(.news, .event, .qa, .flow) h2 i {
      font-weight: normal;
      font-size: 3em;
      color: var(--color-main);
    }
    ._sitetop._index ._f :where(.news, .event, .qa, .flow) h2 span {
      display: block;
      color: var(--color-tertiary);
      margin-top: 0.5em;
    }
    ._sitetop._index ._f :where(.news, .event, .qa) .flex {
      max-width: 1200px;
      margin-right: auto;
      margin-left: auto;
    }
    @container _container (min-width: 701px) {
      ._sitetop._index ._f :where(.news, .event, .qa) .flex {
        display: -webkit-flex;
        display: flex;
        gap: 2em;
      }
    }
    ._sitetop._index ._f :where(.news, .event, .qa) .content {
      container: _container/inline-size;
      position: relative;
      -webkit-flex: 1 1 auto;
      flex: 1 1 auto;
    }
    ._sitetop._index ._f .more {
      display: block;
      width: fit-content;
      font-size: 0.9em;
      font-weight: bold;
      color: var(--color-main);
      margin: 1em;
      margin-left: auto;
    }
    ._sitetop._index ._f .more::after {
      font-family: "FontAwesome solid";
      content: "\f061";
      vertical-align: baseline;
      margin-left: 0.5em;
    }
    ._sitetop._index ._f .event .content {
      padding-top: 1em;
    }
    @container _container (min-width: 801px) {
      ._sitetop._index ._f .event .content ul {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 1em;
      }
    }
    @container _container (max-width: 800px) {
      ._sitetop._index ._f .event .content li {
        margin-bottom: 2em;
      }
    }
    ._sitetop._index ._f .qa {
      background-color: var(--color-gray-light);
    }
    ._sitetop._index ._f .qa .content dl {
      border-radius: 1.5em;
      margin-bottom: 2em;
      overflow: hidden;
    }
    ._sitetop._index ._f .qa .content dt {
      display: -webkit-flex;
      display: flex;
      color: var(--color-main-on);
      background-color: var(--color-main);
      font-weight: bold;
      font-size: 1.25em;
      padding: 1em;
    }
    ._sitetop._index ._f .qa .content dt::before {
      font-family: "FontAwesome solid";
      content: "Q";
      vertical-align: baseline;
      margin-right: 1em;
    }
    ._sitetop._index ._f .qa .content dd {
      background-color: white;
      line-height: 1.75;
      padding: 2em;
    }
    ._sitetop._index ._f .qa .content ul {
      padding-left: 1.5em;
    }
    ._sitetop._index ._f .qa .content li {
      list-style-type: disc;
    }
    ._sitetop._index ._f .conciergeList {
      max-width: var(--width-max-m);
      margin-right: auto;
      margin-left: auto;
      background-color: var(--color-gray-light);
      padding: 2em;
      margin-top: 10vh;
    }
    @container _container (max-width: 900px) {
      ._sitetop._index ._f .conciergeList {
        margin-right: 5vw;
        margin-left: 5vw;
      }
    }
    @container _container (min-width: 901px) {
      ._sitetop._index ._f .conciergeList {
        display: -webkit-flex;
        -webkit-justify-content: space-between;
        -webkit-align-items: centger;
        display: flex;
        justify-content: space-between;
        align-items: centger;
      }
    }
    @container _container (max-width: 900px) {
      ._sitetop._index ._f .conciergeList h3 {
        text-align: center;
        margin-bottom: 2em;
      }
    }
    @container _container (min-width: 901px) {
      ._sitetop._index ._f .conciergeList h3 {
        display: grid;
        grid-template: "img span" "img i";
        grid-template-columns: 50px 1fr;
        gap: 0 1em;
      }
    }
    ._sitetop._index ._f .conciergeList h3 img {
      grid-area: img;
    }
    ._sitetop._index ._f .conciergeList h3 span {
      grid-area: span;
      display: block;
      font-size: min(1.75em, 5cqw);
      color: var(--color-main);
    }
    @container _container (max-width: 900px) {
      ._sitetop._index ._f .conciergeList h3 span {
        margin: 1em 0 0.5em;
      }
    }
    ._sitetop._index ._f .conciergeList h3 i {
      grid-area: i;
      color: var(--color-tertiary);
    }
    ._sitetop._index ._f .conciergeList .u-btn {
      padding-right: 2em;
      padding-left: 2em;
      font-weight: bold;
    }
    @container _container (max-width: 900px) {
      ._sitetop._index ._f .conciergeList .u-btn {
        width: min(18em, 100%);
        font-size: 0.9em;
        margin-inline: auto;
      }
    }
    ._sitetop._index ._f .conciergeList .u-btn::after {
      font-family: "FontAwesome solid";
      content: "\f0ca";
      vertical-align: baseline;
      margin-left: 1em;
    }
    ._sitetop._index ._f .flow {
      text-align: center;
    }
    ._sitetop._index ._f .flow h2 {
      margin: 0 auto 5vh;
    }
    ._sitetop._index ._f .flow .flex {
      max-width: var(--width-max-m);
      margin-right: auto;
      margin-left: auto;
    }
    @container _container (min-width: 901px) {}
    ._sitetop._index ._f .flow dl {
      background-color: var(--color-gray-light);
      border-radius: var(--radius-l);
      padding: 3em 2em;
      margin: 2em 0;
    }
    ._sitetop._index ._f .flow dt {
      margin-bottom: 1em;
    }
    ._sitetop._index ._f .flow dt span {
      display: block;
      font-weight: bold;
      font-size: min(1.75em, 5cqw);
      color: var(--color-main);
      margin-bottom: 0.5rem;
    }
    ._sitetop._index ._f .flow dt i {
      font-size: 0.9em;
      color: var(--color-tertiary);
    }
    ._sitetop._index ._f .flow .u-btn {
      width: min(21em, 100%);
      font-weight: bold;
      margin: 1em auto;
    }
    @container _container (max-width: 900px) {
      ._sitetop._index ._f .flow .u-btn {
        font-size: 0.9em;
      }
    }
    ._sitetop._index ._f .flow .u-btn::after {
      font-family: "FontAwesome solid";
      content: "\f061";
      vertical-align: baseline;
    }
    /* _special */
    ._special:where(._index, .subpage) ._a .t-siteHeader {
      box-shadow: none;
    }
    ._special:where(._index, .subpage) ._d {
      padding: 0;
    }
    ._special:where(._index, .subpage) ._d h1 {
      font-size: min(5cqw, 3em);
      background: var(--grad);
      text-align: center;
      padding: 20vh 10vw;
    }
    ._special:where(._index, .subpage) ._f {
      max-width: var(--width-max-m);
      margin-right: auto;
      margin-left: auto;
      padding-top: 10vh;
      padding-bottom: 10vh;
    }
    ._special:where(._index, .subpage) ._f h2 {
      font-size: min(5cqw, 1.75rem);
      border-left: 4px solid var(--color-border-main);
      line-height: 1.75;
      padding-left: 1em;
      margin: 2em 0 1em;
    }
    ._special:where(._index, .subpage) ._f h3 {
      font-size: min(4.5cqw, 1.5rem);
      background-color: var(--color-gray-light);
      line-height: 1.5;
      padding: 1em;
      margin: 2em 0 1em;
    }
    ._special:where(._index, .subpage) ._f p {
      line-height: 2;
      margin: 1em 0;
    }
    ._special:where(._index, .subpage) ._f figure {
      text-align: center;
      margin: 1em 0;
    }
    ._special:where(._index, .subpage) ._f figure.bg {
      background-color: white;
    }
    ._special:where(._index, .subpage) ._f blockquote {
      background-color: var(--color-gray-light);
      border-radius: var(--radius-l);
      padding: 1.5em;
      margin: 1em 0;
    }
    ._special:where(._index, .subpage) ._f blockquote a {
      color: var(--color-main);
      text-decoration: underline;
      margin: 0 0.15em;
    }
    ._special:where(._index, .subpage) ._f h4 {
      font-size: min(4.5cqw, 1.5rem);
      margin: 2em 0 1em;
    }
    ._special:where(._index, .subpage) ._f figcaption {
      background-color: var(--color-gray-light);
      border-radius: var(--radius-s);
      padding: 1.5em;
      margin: 1em 0;
    }
    ._special:where(._index, .subpage) ._f li {
      line-height: 2;
    }
    ._special:where(._index, .subpage) ._f table {
      font-size: min(1em, 2.5cqw);
      border-collapse: collapse;
    }
    ._special:where(._index, .subpage) ._f table :where(th, td) {
      border: 1px solid var(--color-border-gray);
      padding: 1em;
    }
    ._special:where(._index, .subpage) ._f table thead {
      color: var(--color-main-on);
      background-color: var(--color-main);
    }
    ._special:where(._index, .subpage) ._f table tbody th {
      color: var(--color-main-on);
      background-color: var(--color-main);
    }
    ._special:where(._index, .subpage) ._f table tbody :where(ul, ol) {
      padding-left: 1.5em;
    }
    /* _user */
    ._user._embed_showProfile form {
      background-color: white;
      padding: 5vh 5vw;
      margin-bottom: 5vh;
    }
    ._user._embed_showProfile legend {
      font-weight: bold;
      font-size: min(1.5em, 4cqw);
      color: var(--color-main);
      text-align: center;
    }
    ._user._embed_showProfile .e-user {
      margin-bottom: 1em;
    }
    ._user._embed_showProfile .e-user .userImg {
      display: none;
    }
    ._user._embed_showProfile .e-switchContents {
      margin-top: 5vh;
    }
    @container _container (min-width: 601px) {
      ._user._tpl_case_info.flex {
        display: -webkit-flex;
        -webkit-flex-wrap: wrap;
        display: flex;
        flex-wrap: wrap;
        gap: 1em;
      }
    }
    ._user._tpl_case_info.flex section {
      -webkit-flex: 1 1 auto;
      flex: 1 1 auto;
    }
    ._user._tpl_case_info.flex tbody {
      background-color: transparent;
    }
    @container _container (max-width: 500px) {
      ._user._tpl_case_info.flex :where(th, td) {
        padding: 0;
      }
    }
    ._user._edit_supplementary_info .u td div:not(:first-of-type) {
      margin-top: 0.5em;
    }
    ._user._search ._e .u-keyword {
      width: 100%;
    }
    ._user._search ._e .u-keyword input {
      width: 100%;
    }
    ._user._search ._f .e-user ._grid {
      gap: 0;
    }
    ._user._search ._f .e-user img {
      display: none;
    }
    ._user._search ._f .e-user em {
      font-size: min(1.25em, 5cqw);
      margin-bottom: 0.5em;
    }
    ._user._search ._f .e-user dl {
      display: -webkit-flex;
      -webkit-align-items: center;
      display: flex;
      align-items: center;
      gap: 0.5em;
      font-size: 0.9rem;
    }
    ._user._search ._f .user {
      font-size: 0.9em;
      padding: 5vh 0;
    }
    ._user._search ._f .user:first-of-type {
      padding-top: 0;
    }
    ._user._search ._f .dls dl {
      margin: 0.5em 0;
    }
    @container _container (max-width: 600px) {
      ._user._search ._f .dls dl {
        margin-bottom: 1em;
      }
    }
    @container _container (min-width: 601px) {
      ._user._search ._f .dls dl {
        display: -webkit-flex;
        -webkit-align-items: center;
        display: flex;
        align-items: center;
        gap: 0.5em;
      }
    }
    ._user._search ._f .dls dt {
      font-size: 0.9em;
    }
    @container _container (max-width: 600px) {
      ._user._search ._f .dls dt {
        font-weight: bold;
        margin-bottom: 0.5em;
      }
    }
    @container _container (min-width: 601px) {
      ._user._search ._f .dls dt {
        -webkit-flex: 0 0 auto;
        flex: 0 0 auto;
        width: 10em;
      }
    }
    ._user._search ._f .user .u-btn {
      max-width: 20em;
      margin: 1em auto;
    }
  }
}
