@charset "UTF-8";
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ プロジェクト用スタイルシート
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ 各種変数定義
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ functions
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ mixin
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ vendor

vendor.scss v1.0 | @ajlkn | MIT licensed
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ breakpoints

v1.0 | @ajlkn | MIT licensed
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ html-grid

html-grid.scss v1.0 | @ajlkn | MIT licensed
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ Reset
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@import url("https://fonts.googleapis.com/css?family=Open+Sans:400,600,400italic,600italic|Roboto+Slab:400,700");
@import url(modules/fontawesome-all.min.css);
html, body, div, span, applet, object,
iframe, h1, h2, h3, h4, h5, h6, p, blockquote,
pre, a, abbr, acronym, address, big, cite,
code, del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var, b,
u, i, center, dl, dt, dd, ol, ul, li, fieldset,
form, label, legend, table, caption, tbody,
tfoot, thead, tr, th, td, article, aside,
canvas, details, embed, figure, figcaption,
footer, header, hgroup, menu, nav, output, ruby,
section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  /*vertical-align: baseline;*/ }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }
  blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

body {
  -webkit-text-size-adjust: none; }

mark {
  background-color: transparent;
  color: inherit; }

input::-moz-focus-inner {
  border: 0;
  padding: 0; }

input, select, textarea {
  -moz-appearance: none;
  -webkit-appearance: none;
  -ms-appearance: none;
  appearance: none; }

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ Basic
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@-ms-viewport {
  width: device-width; }
body {
  -ms-overflow-style: scrollbar; }

@media screen and (max-width: 480px) {
  html, body {
    min-width: 320px; } }
html {
  box-sizing: border-box; }

*, *:before, *:after {
  /*box-sizing: inherit;*/
  box-sizing: border-box; }

body {
  background: #ffffff;
  font-family: "メイリオ","ＭＳ Ｐゴシック","ヒラギノ角ゴ Pro W3","Osaka",Arial,sans-serif;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  /*スマホ長押し時の画像保存を止める*/
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -webkit-user-drag: none;
  -khtml-user-drag: none; }
  body.is-preload *, body.is-preload *:before, body.is-preload *:after, body.is-resizing *, body.is-resizing *:before, body.is-resizing *:after {
    -moz-animation: none !important;
    -webkit-animation: none !important;
    -ms-animation: none !important;
    animation: none !important;
    -moz-transition: none !important;
    -webkit-transition: none !important;
    -ms-transition: none !important;
    transition: none !important; }

.body-ui {
  overflow-x: hidden;
  overflow-y: auto; }

.body-ui::-webkit-scrollbar {
  width: 7px; }

.body-ui::-webkit-scrollbar-thumb {
  background-color: #454545;
  -webkit-border-radius: 1ex; }

.body-ui::-webkit-scrollbar-track {
  background-color: #ccc; }

.body-mng {
  -ms-overflow-style: none;
  /* IE, Edge 対応 */
  scrollbar-width: none;
  /* Firefox 対応 */
  overflow: hidden; }

body-mng::-webkit-scrollbar {
  /* Chrome, Safari 対応 */
  display: none; }

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ typography
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* Type */
body, input, select, textarea {
  color: #676e74;
  font-family: "メイリオ", "ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", "Osaka", Arial, sans-serif;
  font-size: 12pt;
  font-weight: 400;
  line-height: 1.65; }
  @media screen and (max-width: 1680px) {
    body, input, select, textarea {
      font-size: 12pt; } }
  @media screen and (max-width: 1280px) {
    body, input, select, textarea {
      font-size: 11pt; } }
  @media screen and (max-width: 360px) {
    body, input, select, textarea {
      font-size: 10pt; } }

td {
  color: #333333; }

a {
  -moz-transition: color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
  -webkit-transition: color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
  -ms-transition: color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
  transition: color 0.2s ease-in-out, border-bottom-color 0.2s ease-in-out;
  /*border-bottom: dotted 1px;*/
  color: #119dc7;
  text-decoration: none;
  outline: none;
  display: block; }
  a:hover {
    border-bottom-color: #119dc7;
    /*color: _palette(accent) !important;*/
    color: #119dc7; }
    a:hover strong {
      color: inherit; }

strong, b {
  color: #3d4449;
  font-weight: 600; }

em, i {
  font-style: italic; }

p {
  /*margin: 0 0 _size(element-margin) 0;*/ }

h1, h2, h3, h4, h5, h6 {
  color: #3d4449;
  font-family: "メイリオ", "ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", "Osaka", Arial, sans-serif;
  font-weight: 700;
  line-height: 1.5;
  margin: 0 0 1em 0; }
  h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
    color: inherit;
    text-decoration: none;
    border-bottom: 0; }

h1 {
  font-size: 4em;
  margin: 0 0 0.5em 0;
  line-height: 1.3; }

h2 {
  font-size: 1.75em; }

h3 {
  font-size: 1.25em; }

h4 {
  font-size: 1.1em; }

h5 {
  font-size: 0.9em; }

h6 {
  font-size: 0.7em; }

@media screen and (max-width: 1680px) {
  h1 {
    font-size: 3.5em; } }
@media screen and (max-width: 980px) {
  h1 {
    font-size: 3.25em; } }
@media screen and (max-width: 768px) {
  h1 {
    font-size: 2em;
    line-height: 1.4; }

  h2 {
    font-size: 1.5em; } }
sub {
  font-size: 0.8em;
  position: relative;
  top: 0.5em; }

sup {
  font-size: 0.8em;
  position: relative;
  top: -0.5em; }

blockquote {
  border-left: solid 3px rgba(210, 215, 217, 0.75);
  font-style: italic;
  margin: 0 0 2em 0;
  padding: 0.5em 0 0.5em 2em; }

code {
  background: rgba(230, 235, 237, 0.25);
  border-radius: 0.375em;
  border: solid 1px rgba(210, 215, 217, 0.75);
  font-family: "メイリオ", "ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", "Osaka", Arial, sans-serif;
  font-size: 0.9em;
  margin: 0 0.25em;
  padding: 0.25em 0.65em; }

pre {
  -webkit-overflow-scrolling: touch;
  font-family: "メイリオ", "ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", "Osaka", Arial, sans-serif;
  font-size: 0.9em;
  margin: 0 0 2em 0; }
  pre code {
    display: block;
    line-height: 1.75;
    padding: 1em 1.5em;
    overflow-x: auto; }

hr {
  border: 0;
  border-bottom: solid 1px rgba(210, 215, 217, 0.75);
  margin: 2em 0; }
  hr.major {
    margin: 3em 0; }

.align-left {
  text-align: left; }

.align-center {
  text-align: center; }

.align-right {
  text-align: right; }

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ 各種コンポネント

   ボタン、テーブル、IMGなどの基礎的な要素に関する定義
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* Actions */
ul.actions {
  display: -moz-flex;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  cursor: default;
  list-style: none;
  margin-left: -1em;
  padding-left: 0; }
  ul.actions li {
    padding: 0 0 0 1em;
    vertical-align: middle; }
  ul.actions.special {
    -moz-justify-content: center;
    -webkit-justify-content: center;
    -ms-justify-content: center;
    justify-content: center;
    width: 100%;
    margin-left: 0; }
    ul.actions.special li:first-child {
      padding-left: 0; }
  ul.actions.stacked {
    -moz-flex-direction: column;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-left: 0; }
    ul.actions.stacked li {
      padding: 1.3em 0 0 0; }
      ul.actions.stacked li:first-child {
        padding-top: 0; }
  ul.actions.fit {
    width: calc(100% + 1em); }
    ul.actions.fit li {
      -moz-flex-grow: 1;
      -webkit-flex-grow: 1;
      -ms-flex-grow: 1;
      flex-grow: 1;
      -moz-flex-shrink: 1;
      -webkit-flex-shrink: 1;
      -ms-flex-shrink: 1;
      flex-shrink: 1;
      width: 100%; }
      ul.actions.fit li > * {
        width: 100%; }
    ul.actions.fit.stacked {
      width: 100%; }

/* Box */
.box {
  border-radius: 0.375em;
  border: solid 1px rgba(210, 215, 217, 0.75);
  margin-bottom: 2em;
  padding: 1.5em; }
  .box > :last-child,
  .box > :last-child > :last-child,
  .box > :last-child > :last-child > :last-child {
    margin-bottom: 0; }
  .box.alt {
    border: 0;
    border-radius: 0;
    padding: 0; }

/* Button */
input[type="submit"],
input[type="reset"],
input[type="button"],
button,
.button {
  -moz-appearance: none;
  -webkit-appearance: none;
  -ms-appearance: none;
  appearance: none;
  -moz-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
  -webkit-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
  -ms-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
  transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
  background-color: transparent;
  border-radius: 0.375em;
  border: 0;
  box-shadow: inset 0 0 0 2px #119dc7;
  /*color: _palette(accent) !important;*/
  color: #119dc7;
  cursor: pointer;
  display: inline-block;
  font-family: "メイリオ", "ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", "Osaka", Arial, sans-serif;
  font-size: 1em;
  font-weight: 400;
  height: 2.5em;
  letter-spacing: 0.075em;
  line-height: 2.5em;
  padding: 0 1.0em;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  margin: 2px 0; }
  input[type="submit"]:hover,
  input[type="reset"]:hover,
  input[type="button"]:hover,
  button:hover,
  .button:hover {
    background-color: rgba(17, 157, 199, 0.05); }
  input[type="submit"]:active,
  input[type="reset"]:active,
  input[type="button"]:active,
  button:active,
  .button:active {
    background-color: rgba(17, 157, 199, 0.15);
    margin: 3px -1px 1px 1px; }
  input[type="submit"].icon:before,
  input[type="reset"].icon:before,
  input[type="button"].icon:before,
  button.icon:before,
  .button.icon:before {
    margin-right: 0.5em; }
  input[type="submit"].fit,
  input[type="reset"].fit,
  input[type="button"].fit,
  button.fit,
  .button.fit {
    width: 100%; }
  input[type="submit"].small,
  input[type="reset"].small,
  input[type="button"].small,
  button.small,
  .button.small {
    font-size: 0.9em;
    height: 2em;
    line-height: 2.1em; }
  input[type="submit"].x-small,
  input[type="reset"].x-small,
  input[type="button"].x-small,
  button.x-small,
  .button.x-small {
    font-size: 0.9em;
    height: 2em;
    line-height: 2.1em;
    padding: 0 0.3em; }
  input[type="submit"].large,
  input[type="reset"].large,
  input[type="button"].large,
  button.large,
  .button.large {
    font-size: 1em;
    height: 3.65em;
    line-height: 3.65em; }
  input[type="submit"].primary,
  input[type="reset"].primary,
  input[type="button"].primary,
  button.primary,
  .button.primary {
    background-color: #119dc7;
    box-shadow: none;
    color: #ffffff !important; }
    input[type="submit"].primary:hover,
    input[type="reset"].primary:hover,
    input[type="button"].primary:hover,
    button.primary:hover,
    .button.primary:hover {
      background-color: #29c1ef; }
    input[type="submit"].primary:active,
    input[type="reset"].primary:active,
    input[type="button"].primary:active,
    button.primary:active,
    .button.primary:active {
      background-color: #74abbb; }
    input[type="submit"].primary.yellow,
    input[type="reset"].primary.yellow,
    input[type="button"].primary.yellow,
    button.primary.yellow,
    .button.primary.yellow {
      background-color: #9d8c5b; }
      input[type="submit"].primary.yellow:hover,
      input[type="reset"].primary.yellow:hover,
      input[type="button"].primary.yellow:hover,
      button.primary.yellow:hover,
      .button.primary.yellow:hover {
        background-color: #d3ae44; }
      input[type="submit"].primary.yellow:active,
      input[type="reset"].primary.yellow:active,
      input[type="button"].primary.yellow:active,
      button.primary.yellow:active,
      .button.primary.yellow:active {
        background-color: #aaaa88; }
  input[type="submit"].disabled, input[type="submit"]:disabled,
  input[type="reset"].disabled,
  input[type="reset"]:disabled,
  input[type="button"].disabled,
  input[type="button"]:disabled,
  button.disabled,
  button:disabled,
  .button.disabled,
  .button:disabled {
    pointer-events: none;
    opacity: 0.25; }

/* Contact */
ul.contact {
  list-style: none;
  padding: 0; }
  ul.contact li {
    text-decoration: none;
    border-top: solid 1px rgba(210, 215, 217, 0.75);
    margin: 1.5em 0 0 0;
    padding: 1.5em 0 0 3em;
    position: relative; }
    ul.contact li:before {
      -moz-osx-font-smoothing: grayscale;
      -webkit-font-smoothing: antialiased;
      display: inline-block;
      font-style: normal;
      font-variant: normal;
      text-rendering: auto;
      line-height: 1;
      text-transform: none !important;
      font-family: 'Font Awesome 5 Free';
      font-weight: 400; }
    ul.contact li:before {
      color: #119dc7;
      display: inline-block;
      font-size: 1.5em;
      height: 1.125em;
      left: 0;
      line-height: 1.125em;
      position: absolute;
      text-align: center;
      top: 1em;
      width: 1.5em; }
    ul.contact li:first-child {
      border-top: 0;
      margin-top: 0;
      padding-top: 0; }
      ul.contact li:first-child:before {
        top: 0; }
    ul.contact li a {
      color: inherit; }

/* Features */
.features {
  display: -moz-flex;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -moz-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 0 2em -3em;
  width: calc(100% + 3em); }
  .features article {
    -moz-align-items: center;
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center;
    display: -moz-flex;
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    margin: 0 0 3em 3em;
    position: relative;
    width: calc(50% - 3em); }
    .features article:nth-child(2n - 1) {
      margin-right: 1.5em; }
    .features article:nth-child(2n) {
      margin-left: 1.5em; }
    .features article:nth-last-child(1), .features article:nth-last-child(2) {
      margin-bottom: 0; }
    .features article .icon {
      -moz-flex-grow: 0;
      -webkit-flex-grow: 0;
      -ms-flex-grow: 0;
      flex-grow: 0;
      -moz-flex-shrink: 0;
      -webkit-flex-shrink: 0;
      -ms-flex-shrink: 0;
      flex-shrink: 0;
      display: block;
      height: 10em;
      line-height: 10em;
      margin: 0 2em 0 0;
      text-align: center;
      width: 10em; }
      .features article .icon:before {
        color: #119dc7;
        font-size: 2.75rem;
        position: relative;
        top: 0.05em; }
      .features article .icon:after {
        -moz-transform: rotate(45deg);
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
        border-radius: 0.25rem;
        border: solid 2px rgba(210, 215, 217, 0.75);
        content: '';
        display: block;
        height: 7em;
        left: 50%;
        margin: -3.5em 0 0 -3.5em;
        position: absolute;
        top: 50%;
        width: 7em; }
    .features article .content {
      -moz-flex-grow: 1;
      -webkit-flex-grow: 1;
      -ms-flex-grow: 1;
      flex-grow: 1;
      -moz-flex-shrink: 1;
      -webkit-flex-shrink: 1;
      -ms-flex-shrink: 1;
      flex-shrink: 1;
      width: 100%; }
      .features article .content > :last-child {
        margin-bottom: 0; }
  @media screen and (max-width: 980px) {
    .features {
      margin: 0 0 2em 0;
      width: 100%; }
      .features article {
        margin: 0 0 3em 0;
        width: 100%; }
        .features article:nth-child(2n - 1) {
          margin-right: 0; }
        .features article:nth-child(2n) {
          margin-left: 0; }
        .features article:nth-last-child(1), .features article:nth-last-child(2) {
          margin-bottom: 3em; }
        .features article:last-child {
          margin-bottom: 0; }
        .features article .icon {
          height: 8em;
          line-height: 8em;
          width: 8em; }
          .features article .icon:before {
            font-size: 2.25rem; }
          .features article .icon:after {
            height: 6em;
            margin: -3em 0 0 -3em;
            width: 6em; } }
  @media screen and (max-width: 480px) {
    .features article {
      -moz-flex-direction: column;
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
      -moz-align-items: -moz-flex-start;
      -webkit-align-items: -webkit-flex-start;
      -ms-align-items: -ms-flex-start;
      align-items: flex-start; }
      .features article .icon {
        height: 6em;
        line-height: 6em;
        margin: 0 0 1.5em 0;
        width: 6em; }
        .features article .icon:before {
          font-size: 1.5rem; }
        .features article .icon:after {
          height: 4em;
          margin: -2em 0 0 -2em;
          width: 4em; } }
  @media screen and (max-width: 480px) {
    .features article .icon:before {
      font-size: 1.25rem; } }

/* Form */
form {
  /*margin: 0 0 _size(element-margin) 0;*/
  margin: 0 0 0 0; }

label {
  color: #3d4449;
  display: block;
  font-size: 0.9em;
  font-weight: 600;
  margin: 0.5em 0 0.5em 0; }

input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"],
input[type="search"],
input[type="url"],
input[type="date"],
input[type="time"],
select,
textarea {
  -moz-appearance: none;
  -webkit-appearance: none;
  -ms-appearance: none;
  appearance: none;
  background: #ffffff;
  border-radius: 0.375em;
  border: none;
  border: solid 1px rgba(210, 215, 217, 0.75);
  color: inherit;
  display: block;
  outline: 0;
  text-decoration: none;
  width: 100%;
  padding: 0 0.75em; }
  @media screen and (max-width: 768px) {
    input[type="text"],
    input[type="password"],
    input[type="email"],
    input[type="tel"],
    input[type="search"],
    input[type="url"],
    input[type="date"],
    input[type="time"],
    select,
    textarea {
      padding: 0 0.4em; } }
  input[type="text"]:invalid,
  input[type="password"]:invalid,
  input[type="email"]:invalid,
  input[type="tel"]:invalid,
  input[type="search"]:invalid,
  input[type="url"]:invalid,
  input[type="date"]:invalid,
  input[type="time"]:invalid,
  select:invalid,
  textarea:invalid {
    box-shadow: none; }
  input[type="text"]:focus,
  input[type="password"]:focus,
  input[type="email"]:focus,
  input[type="tel"]:focus,
  input[type="search"]:focus,
  input[type="url"]:focus,
  input[type="date"]:focus,
  input[type="time"]:focus,
  select:focus,
  textarea:focus {
    border-color: #119dc7;
    box-shadow: 0 0 0 1px #119dc7; }
  input[type="text"].disabled, input[type="text"]:disabled,
  input[type="password"].disabled,
  input[type="password"]:disabled,
  input[type="email"].disabled,
  input[type="email"]:disabled,
  input[type="tel"].disabled,
  input[type="tel"]:disabled,
  input[type="search"].disabled,
  input[type="search"]:disabled,
  input[type="url"].disabled,
  input[type="url"]:disabled,
  input[type="date"].disabled,
  input[type="date"]:disabled,
  input[type="time"].disabled,
  input[type="time"]:disabled,
  select.disabled,
  select:disabled,
  textarea.disabled,
  textarea:disabled {
    background: #f5f6f7;
    pointer-events: none !important; }

input[type="time"] {
  padding: 0.60em 0.75em; }

select {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' preserveAspectRatio='none' viewBox='0 0 40 40'%3E%3Cpath d='M9.4,12.3l10.4,10.4l10.4-10.4c0.2-0.2,0.5-0.4,0.9-0.4c0.3,0,0.6,0.1,0.9,0.4l3.3,3.3c0.2,0.2,0.4,0.5,0.4,0.9 c0,0.4-0.1,0.6-0.4,0.9L20.7,31.9c-0.2,0.2-0.5,0.4-0.9,0.4c-0.3,0-0.6-0.1-0.9-0.4L4.3,17.3c-0.2-0.2-0.4-0.5-0.4-0.9 c0-0.4,0.1-0.6,0.4-0.9l3.3-3.3c0.2-0.2,0.5-0.4,0.9-0.4S9.1,12.1,9.4,12.3z' fill='rgba(210, 215, 217, 0.75)' /%3E%3C/svg%3E");
  background-size: 1.25em;
  background-repeat: no-repeat;
  background-position: calc(100% - 0.5em) center;
  height: 2.75em;
  padding-right: 2.75em;
  text-overflow: ellipsis; }
  @media screen and (max-width: 768px) {
    select {
      padding-right: 2em; } }
  select option {
    color: #3d4449;
    background: #ffffff; }
  select:focus::-ms-value {
    background-color: transparent; }
  select::-ms-expand {
    display: none; }

input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"],
input[type="search"],
input[type="url"],
input[type="date"],
input[type="time"],
input[type="tel"],
input[type="number"],
select {
  height: 2.75em;
  ime-mode: inactive;
  /* Edge/Explorer/Firefoxなど、Chromeは非対応なので「input type='tel'」を利用 */ }

textarea {
  padding: 0.75em 1em; }

input[type="checkbox"],
input[type="radio"] {
  -moz-appearance: none;
  -webkit-appearance: none;
  -ms-appearance: none;
  appearance: none;
  display: block;
  float: left;
  opacity: 0;
  z-index: -1;
  width: 0;
  margin: 0; }
  input[type="checkbox"] + label,
  input[type="radio"] + label {
    text-decoration: none;
    color: #676e74;
    cursor: pointer;
    display: inline-block;
    font-size: 1em;
    font-weight: 400;
    padding-left: 2.4em;
    padding-right: 0.75em;
    position: relative; }
    input[type="checkbox"] + label:before,
    input[type="radio"] + label:before {
      -moz-osx-font-smoothing: grayscale;
      -webkit-font-smoothing: antialiased;
      display: inline-block;
      font-style: normal;
      font-variant: normal;
      text-rendering: auto;
      line-height: 1;
      text-transform: none !important;
      font-family: 'Font Awesome 5 Free';
      font-weight: 900; }
    input[type="checkbox"] + label:before,
    input[type="radio"] + label:before {
      background: #ffffff;
      border-radius: 0.375em;
      border: solid 1px rgba(210, 215, 217, 0.75);
      content: '';
      display: inline-block;
      font-size: 0.8em;
      height: 2.0625em;
      left: 0;
      line-height: 2.0625em;
      position: absolute;
      text-align: center;
      top: 0;
      width: 2.0625em; }
  input[type="checkbox"]:checked + label:before,
  input[type="radio"]:checked + label:before {
    background: #3d4449;
    border-color: #3d4449;
    color: #ffffff;
    content: '\f00c'; }
  input[type="checkbox"]:focus + label:before,
  input[type="radio"]:focus + label:before {
    border-color: #119dc7;
    box-shadow: 0 0 0 1px #119dc7; }

input[type="checkbox"] + label:before {
  border-radius: 0.375em; }

input[type="radio"] {
  pointer-events: none; }
  input[type="radio"] + label:before {
    border-radius: 100%; }

::-webkit-input-placeholder {
  color: #9fa3a6 !important;
  opacity: 0.5; }

:-moz-placeholder {
  color: #9fa3a6 !important;
  opacity: 0.5; }

::-moz-placeholder {
  color: #9fa3a6 !important;
  opacity: 0.5; }

:-ms-input-placeholder {
  color: #9fa3a6 !important;
  opacity: 0.5; }

/* Icon */
.icon {
  text-decoration: none;
  border-bottom: none;
  position: relative; }
  .icon:before {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    text-transform: none !important;
    font-family: 'Font Awesome 5 Free';
    font-weight: 400; }
  .icon > .label {
    display: none; }
  .icon:before {
    line-height: inherit; }
  .icon.solid:before {
    font-weight: 900; }
  .icon.brands:before {
    font-family: 'Font Awesome 5 Brands'; }

/* Icons */
ul.icons {
  cursor: default;
  list-style: none;
  padding-left: 0; }
  ul.icons li {
    display: inline-block;
    padding: 0 1em 0 0; }
    ul.icons li:last-child {
      padding-right: 0; }
    ul.icons li .icon {
      color: inherit; }
      ul.icons li .icon:before {
        font-size: 1.25em; }
    ul.icons li .logo {
      height: 38px;
      margin-top: 8px; }
      @media screen and (max-width: 1680px) {
        ul.icons li .logo {
          margin-top: 6px; } }
      @media screen and (max-width: 1280px) {
        ul.icons li .logo {
          margin-top: 2px; } }
      @media screen and (max-width: 980px) {
        ul.icons li .logo {
          margin-top: 2px; } }
      @media screen and (max-width: 768px) {
        ul.icons li .logo {
          margin-top: 17px; } }
      @media screen and (max-width: 480px) {
        ul.icons li .logo {
          margin-top: 17px; } }
      @media screen and (max-width: 360px) {
        ul.icons li .logo {
          margin-top: 14px; } }

/* Image */
.image, .photo {
  border: 0;
  display: inline-block;
  position: relative; }
  .image img, .photo img {
    display: block; }
  .image.left, .image.right, .photo.left, .photo.right {
    max-width: 40%; }
    .image.left img, .image.right img, .photo.left img, .photo.right img {
      width: 100%; }
  .image.left, .photo.left {
    float: left;
    padding: 0 1.5em 1em 0;
    top: 0.25em; }
  .image.right, .photo.right {
    float: right;
    padding: 0 0 1em 1.5em;
    top: 0.25em; }
  .image.fit, .photo.fit {
    display: block;
    margin: 0 0 2em 0;
    width: 100%; }
    .image.fit img, .photo.fit img {
      width: 100%; }
  .image.main, .photo.main {
    display: block;
    margin: 0 0 3em 0;
    width: 100%; }
    .image.main img, .photo.main img {
      width: 100%; }

a.image {
  overflow: hidden; }
  a.image img {
    -moz-transition: -moz-transform 0.2s ease;
    -webkit-transition: -webkit-transform 0.2s ease;
    -ms-transition: -ms-transform 0.2s ease;
    transition: transform 0.2s ease; }
  a.image:hover img {
    -moz-transform: scale(1.075);
    -webkit-transform: scale(1.075);
    -ms-transform: scale(1.075);
    transform: scale(1.075); }

/* List */
ol {
  list-style: decimal;
  margin: 0 0 2em 0;
  padding-left: 1.25em; }
  ol li {
    padding-left: 0.25em; }

ul {
  /*list-style: disc;*/
  list-style: none;
  margin: 0 0 2em 0;
  /*padding-left: 1em;*/ }
  ul li {
    /*padding-left: 0.5em;*/ }
  ul.alt {
    list-style: none;
    padding-left: 0; }
    ul.alt li {
      border-top: solid 1px rgba(210, 215, 217, 0.75);
      padding: 0.5em 0; }
      ul.alt li:first-child {
        border-top: 0;
        padding-top: 0; }

dl {
  margin: 0 0 2em 0; }
  dl dt {
    display: block;
    font-weight: 600;
    margin: 0 0 1em 0; }
  dl dd {
    margin-left: 2em; }

/* Mini Posts */
.mini-posts article {
  border-top: solid 1px rgba(210, 215, 217, 0.75);
  margin-top: 2em;
  padding-top: 2em; }
  .mini-posts article .image {
    display: block;
    margin: 0 0 1.5em 0; }
    .mini-posts article .image img {
      display: block;
      width: 100%; }
  .mini-posts article:first-child {
    border-top: 0;
    margin-top: 0;
    padding-top: 0; }

/* Pagination */
ul.pagination {
  cursor: default;
  list-style: none;
  padding-left: 0;
  text-align: center; }
  ul.pagination li {
    display: inline-block;
    padding-left: 0;
    vertical-align: middle; }
    ul.pagination li > .page {
      -moz-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
      -webkit-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
      -ms-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
      transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
      border-bottom: 0;
      border-radius: 0.375em;
      display: inline-block;
      font-size: 0.8em;
      font-weight: 600;
      height: 2em;
      line-height: 2em;
      margin: 0 0.125em;
      min-width: 2em;
      padding: 0 0.5em;
      text-align: center; }
      ul.pagination li > .page.active {
        background-color: #119dc7;
        color: #ffffff !important; }
        ul.pagination li > .page.active:hover {
          background-color: #12a8d5; }
        ul.pagination li > .page.active:active {
          background-color: #1092b9; }
    ul.pagination li:first-child {
      padding-right: 0.75em; }
    ul.pagination li:last-child {
      padding-left: 0.75em; }
  @media screen and (max-width: 480px) {
    ul.pagination li:nth-child(n+2):nth-last-child(n+2) {
      display: none; }
    ul.pagination li:first-child {
      padding-right: 0; } }

/* Pagination 2 */
.list-pager {
  width: 100%;
  text-align: center;
  margin-top: 20px; }
  .list-pager a:hover {
    border-bottom-color: #bbb;
    color: unset; }

/* Posts */
.posts {
  display: -moz-flex;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -moz-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 0 2em -6em;
  width: calc(100% + 6em); }
  .posts article {
    -moz-flex-grow: 0;
    -webkit-flex-grow: 0;
    -ms-flex-grow: 0;
    flex-grow: 0;
    -moz-flex-shrink: 1;
    -webkit-flex-shrink: 1;
    -ms-flex-shrink: 1;
    flex-shrink: 1;
    margin: 0 0 6em 6em;
    position: relative;
    width: calc(33.3333333333% - 6em); }
    .posts article:before {
      background: rgba(210, 215, 217, 0.75);
      content: '';
      display: block;
      height: calc(100% + 6em);
      left: -3em;
      position: absolute;
      top: 0;
      width: 1px; }
    .posts article:after {
      background: rgba(210, 215, 217, 0.75);
      bottom: -3em;
      content: '';
      display: block;
      height: 1px;
      position: absolute;
      right: 0;
      width: calc(100% + 6em); }
    .posts article > :last-child {
      margin-bottom: 0; }
    .posts article .image {
      display: block;
      margin: 0 0 2em 0; }
      .posts article .image img {
        display: block;
        width: 100%; }
  @media screen and (min-width: 1681px) {
    .posts article:nth-child(3n + 1):before {
      display: none; }
    .posts article:nth-child(3n + 1):after {
      width: 100%; }
    .posts article:nth-last-child(1), .posts article:nth-last-child(2), .posts article:nth-last-child(3) {
      margin-bottom: 0; }
      .posts article:nth-last-child(1):before, .posts article:nth-last-child(2):before, .posts article:nth-last-child(3):before {
        height: 100%; }
      .posts article:nth-last-child(1):after, .posts article:nth-last-child(2):after, .posts article:nth-last-child(3):after {
        display: none; } }
  @media screen and (max-width: 1680px) {
    .posts article {
      width: calc(50% - 6em); }
      .posts article:nth-last-child(3) {
        margin-bottom: 6em; } }
  @media screen and (min-width: 481px) and (max-width: 1680px) {
    .posts article:nth-child(2n + 1):before {
      display: none; }
    .posts article:nth-child(2n + 1):after {
      width: 100%; }
    .posts article:nth-last-child(1), .posts article:nth-last-child(2) {
      margin-bottom: 0; }
      .posts article:nth-last-child(1):before, .posts article:nth-last-child(2):before {
        height: 100%; }
      .posts article:nth-last-child(1):after, .posts article:nth-last-child(2):after {
        display: none; } }
  @media screen and (max-width: 768px) {
    .posts {
      margin: 0 0 2em -4.5em;
      width: calc(100% + 4.5em); }
      .posts article {
        margin: 0 0 4.5em 4.5em;
        width: calc(50% - 4.5em); }
        .posts article:before {
          height: calc(100% + 4.5em);
          left: -2.25em; }
        .posts article:after {
          bottom: -2.25em;
          width: calc(100% + 4.5em); }
        .posts article:nth-last-child(3) {
          margin-bottom: 4.5em; } }
  @media screen and (max-width: 480px) {
    .posts {
      margin: 0 0 2em 0;
      width: 100%; }
      .posts article {
        margin: 0 0 4.5em 0;
        width: 100%; }
        .posts article:before {
          display: none; }
        .posts article:after {
          width: 100%; }
        .posts article:last-child {
          margin-bottom: 0; }
          .posts article:last-child:after {
            display: none; } }

/* Row */
.row {
  display: flex;
  flex-wrap: wrap;
  box-sizing: border-box;
  align-items: stretch; }
  .row > * {
    box-sizing: border-box; }
  .row.gtr-uniform > * > :last-child {
    margin-bottom: 0; }
  .row.aln-left {
    justify-content: flex-start; }
  .row.aln-center {
    justify-content: center; }
  .row.aln-right {
    justify-content: flex-end; }
  .row.aln-top {
    align-items: flex-start; }
  .row.aln-middle {
    align-items: center; }
  .row.aln-bottom {
    align-items: flex-end; }
  .row > .imp {
    order: -1; }
  .row > .col-1 {
    width: 8.3333333333%; }
  .row > .off-1 {
    margin-left: 8.3333333333%; }
  .row > .col-2 {
    width: 16.6666666667%; }
  .row > .off-2 {
    margin-left: 16.6666666667%; }
  .row > .col-3 {
    width: 25%; }
  .row > .off-3 {
    margin-left: 25%; }
  .row > .col-4 {
    width: 33.3333333333%; }
  .row > .off-4 {
    margin-left: 33.3333333333%; }
  .row > .col-5 {
    width: 41.6666666667%; }
  .row > .off-5 {
    margin-left: 41.6666666667%; }
  .row > .col-6 {
    width: 50%; }
  .row > .off-6 {
    margin-left: 50%; }
  .row > .col-7 {
    width: 58.3333333333%; }
  .row > .off-7 {
    margin-left: 58.3333333333%; }
  .row > .col-8 {
    width: 66.6666666667%; }
  .row > .off-8 {
    margin-left: 66.6666666667%; }
  .row > .col-9 {
    width: 75%; }
  .row > .off-9 {
    margin-left: 75%; }
  .row > .col-10 {
    width: 83.3333333333%; }
  .row > .off-10 {
    margin-left: 83.3333333333%; }
  .row > .col-11 {
    width: 91.6666666667%; }
  .row > .off-11 {
    margin-left: 91.6666666667%; }
  .row > .col-12 {
    width: 100%; }
  .row > .off-12 {
    margin-left: 100%; }
  .row.gtr-0 {
    margin-top: 0;
    margin-left: 0em; }
    .row.gtr-0 > * {
      padding: 0 0 0 0em; }
    .row.gtr-0.gtr-uniform {
      margin-top: 0em; }
      .row.gtr-0.gtr-uniform > * {
        padding-top: 0em; }
  .row.gtr-25 {
    margin-top: 0;
    margin-left: -0.375em; }
    .row.gtr-25 > * {
      padding: 0 0 0 0.375em; }
    .row.gtr-25.gtr-uniform {
      margin-top: -0.375em; }
      .row.gtr-25.gtr-uniform > * {
        padding-top: 0.375em; }
  .row.gtr-50 {
    margin-top: 0;
    margin-left: -0.75em; }
    .row.gtr-50 > * {
      padding: 0 0 0 0.75em; }
    .row.gtr-50.gtr-uniform {
      margin-top: -0.75em; }
      .row.gtr-50.gtr-uniform > * {
        padding-top: 0.75em; }
  .row {
    margin-top: 0;
    margin-left: -1.5em; }
    .row > * {
      padding: 0 0 0 1.5em; }
    .row.gtr-uniform {
      margin-top: -1.5em; }
      .row.gtr-uniform > * {
        padding-top: 1.5em; }
  .row.gtr-150 {
    margin-top: 0;
    margin-left: -2.25em; }
    .row.gtr-150 > * {
      padding: 0 0 0 2.25em; }
    .row.gtr-150.gtr-uniform {
      margin-top: -2.25em; }
      .row.gtr-150.gtr-uniform > * {
        padding-top: 2.25em; }
  .row.gtr-200 {
    margin-top: 0;
    margin-left: -3em; }
    .row.gtr-200 > * {
      padding: 0 0 0 3em; }
    .row.gtr-200.gtr-uniform {
      margin-top: -3em; }
      .row.gtr-200.gtr-uniform > * {
        padding-top: 3em; }
  @media screen and (max-width: 1680px) {
    .row {
      display: flex;
      flex-wrap: wrap;
      box-sizing: border-box;
      align-items: stretch; }
      .row > * {
        box-sizing: border-box; }
      .row.gtr-uniform > * > :last-child {
        margin-bottom: 0; }
      .row.aln-left {
        justify-content: flex-start; }
      .row.aln-center {
        justify-content: center; }
      .row.aln-right {
        justify-content: flex-end; }
      .row.aln-top {
        align-items: flex-start; }
      .row.aln-middle {
        align-items: center; }
      .row.aln-bottom {
        align-items: flex-end; }
      .row > .imp-xlarge {
        order: -1; }
      .row > .col-1-xlarge {
        width: 8.3333333333%; }
      .row > .off-1-xlarge {
        margin-left: 8.3333333333%; }
      .row > .col-2-xlarge {
        width: 16.6666666667%; }
      .row > .off-2-xlarge {
        margin-left: 16.6666666667%; }
      .row > .col-3-xlarge {
        width: 25%; }
      .row > .off-3-xlarge {
        margin-left: 25%; }
      .row > .col-4-xlarge {
        width: 33.3333333333%; }
      .row > .off-4-xlarge {
        margin-left: 33.3333333333%; }
      .row > .col-5-xlarge {
        width: 41.6666666667%; }
      .row > .off-5-xlarge {
        margin-left: 41.6666666667%; }
      .row > .col-6-xlarge {
        width: 50%; }
      .row > .off-6-xlarge {
        margin-left: 50%; }
      .row > .col-7-xlarge {
        width: 58.3333333333%; }
      .row > .off-7-xlarge {
        margin-left: 58.3333333333%; }
      .row > .col-8-xlarge {
        width: 66.6666666667%; }
      .row > .off-8-xlarge {
        margin-left: 66.6666666667%; }
      .row > .col-9-xlarge {
        width: 75%; }
      .row > .off-9-xlarge {
        margin-left: 75%; }
      .row > .col-10-xlarge {
        width: 83.3333333333%; }
      .row > .off-10-xlarge {
        margin-left: 83.3333333333%; }
      .row > .col-11-xlarge {
        width: 91.6666666667%; }
      .row > .off-11-xlarge {
        margin-left: 91.6666666667%; }
      .row > .col-12-xlarge {
        width: 100%; }
      .row > .off-12-xlarge {
        margin-left: 100%; }
      .row.gtr-0 {
        margin-top: 0;
        margin-left: 0em; }
        .row.gtr-0 > * {
          padding: 0 0 0 0em; }
        .row.gtr-0.gtr-uniform {
          margin-top: 0em; }
          .row.gtr-0.gtr-uniform > * {
            padding-top: 0em; }
      .row.gtr-25 {
        margin-top: 0;
        margin-left: -0.375em; }
        .row.gtr-25 > * {
          padding: 0 0 0 0.375em; }
        .row.gtr-25.gtr-uniform {
          margin-top: -0.375em; }
          .row.gtr-25.gtr-uniform > * {
            padding-top: 0.375em; }
      .row.gtr-50 {
        margin-top: 0;
        margin-left: -0.75em; }
        .row.gtr-50 > * {
          padding: 0 0 0 0.75em; }
        .row.gtr-50.gtr-uniform {
          margin-top: -0.75em; }
          .row.gtr-50.gtr-uniform > * {
            padding-top: 0.75em; }
      .row {
        margin-top: 0;
        margin-left: -1.5em; }
        .row > * {
          padding: 0 0 0 1.5em; }
        .row.gtr-uniform {
          margin-top: -1.5em; }
          .row.gtr-uniform > * {
            padding-top: 1.5em; }
      .row.gtr-150 {
        margin-top: 0;
        margin-left: -2.25em; }
        .row.gtr-150 > * {
          padding: 0 0 0 2.25em; }
        .row.gtr-150.gtr-uniform {
          margin-top: -2.25em; }
          .row.gtr-150.gtr-uniform > * {
            padding-top: 2.25em; }
      .row.gtr-200 {
        margin-top: 0;
        margin-left: -3em; }
        .row.gtr-200 > * {
          padding: 0 0 0 3em; }
        .row.gtr-200.gtr-uniform {
          margin-top: -3em; }
          .row.gtr-200.gtr-uniform > * {
            padding-top: 3em; } }
  @media screen and (max-width: 1280px) {
    .row {
      display: flex;
      flex-wrap: wrap;
      box-sizing: border-box;
      align-items: stretch; }
      .row > * {
        box-sizing: border-box; }
      .row.gtr-uniform > * > :last-child {
        margin-bottom: 0; }
      .row.aln-left {
        justify-content: flex-start; }
      .row.aln-center {
        justify-content: center; }
      .row.aln-right {
        justify-content: flex-end; }
      .row.aln-top {
        align-items: flex-start; }
      .row.aln-middle {
        align-items: center; }
      .row.aln-bottom {
        align-items: flex-end; }
      .row > .imp-large {
        order: -1; }
      .row > .col-1-large {
        width: 8.3333333333%; }
      .row > .off-1-large {
        margin-left: 8.3333333333%; }
      .row > .col-2-large {
        width: 16.6666666667%; }
      .row > .off-2-large {
        margin-left: 16.6666666667%; }
      .row > .col-3-large {
        width: 25%; }
      .row > .off-3-large {
        margin-left: 25%; }
      .row > .col-4-large {
        width: 33.3333333333%; }
      .row > .off-4-large {
        margin-left: 33.3333333333%; }
      .row > .col-5-large {
        width: 41.6666666667%; }
      .row > .off-5-large {
        margin-left: 41.6666666667%; }
      .row > .col-6-large {
        width: 50%; }
      .row > .off-6-large {
        margin-left: 50%; }
      .row > .col-7-large {
        width: 58.3333333333%; }
      .row > .off-7-large {
        margin-left: 58.3333333333%; }
      .row > .col-8-large {
        width: 66.6666666667%; }
      .row > .off-8-large {
        margin-left: 66.6666666667%; }
      .row > .col-9-large {
        width: 75%; }
      .row > .off-9-large {
        margin-left: 75%; }
      .row > .col-10-large {
        width: 83.3333333333%; }
      .row > .off-10-large {
        margin-left: 83.3333333333%; }
      .row > .col-11-large {
        width: 91.6666666667%; }
      .row > .off-11-large {
        margin-left: 91.6666666667%; }
      .row > .col-12-large {
        width: 100%; }
      .row > .off-12-large {
        margin-left: 100%; }
      .row.gtr-0 {
        margin-top: 0;
        margin-left: 0em; }
        .row.gtr-0 > * {
          padding: 0 0 0 0em; }
        .row.gtr-0.gtr-uniform {
          margin-top: 0em; }
          .row.gtr-0.gtr-uniform > * {
            padding-top: 0em; }
      .row.gtr-25 {
        margin-top: 0;
        margin-left: -0.375em; }
        .row.gtr-25 > * {
          padding: 0 0 0 0.375em; }
        .row.gtr-25.gtr-uniform {
          margin-top: -0.375em; }
          .row.gtr-25.gtr-uniform > * {
            padding-top: 0.375em; }
      .row.gtr-50 {
        margin-top: 0;
        margin-left: -0.75em; }
        .row.gtr-50 > * {
          padding: 0 0 0 0.75em; }
        .row.gtr-50.gtr-uniform {
          margin-top: -0.75em; }
          .row.gtr-50.gtr-uniform > * {
            padding-top: 0.75em; }
      .row {
        margin-top: 0;
        margin-left: -1.5em; }
        .row > * {
          padding: 0 0 0 1.5em; }
        .row.gtr-uniform {
          margin-top: -1.5em; }
          .row.gtr-uniform > * {
            padding-top: 1.5em; }
      .row.gtr-150 {
        margin-top: 0;
        margin-left: -2.25em; }
        .row.gtr-150 > * {
          padding: 0 0 0 2.25em; }
        .row.gtr-150.gtr-uniform {
          margin-top: -2.25em; }
          .row.gtr-150.gtr-uniform > * {
            padding-top: 2.25em; }
      .row.gtr-200 {
        margin-top: 0;
        margin-left: -3em; }
        .row.gtr-200 > * {
          padding: 0 0 0 3em; }
        .row.gtr-200.gtr-uniform {
          margin-top: -3em; }
          .row.gtr-200.gtr-uniform > * {
            padding-top: 3em; } }
  @media screen and (max-width: 980px) {
    .row {
      display: flex;
      flex-wrap: wrap;
      box-sizing: border-box;
      align-items: stretch; }
      .row > * {
        box-sizing: border-box; }
      .row.gtr-uniform > * > :last-child {
        margin-bottom: 0; }
      .row.aln-left {
        justify-content: flex-start; }
      .row.aln-center {
        justify-content: center; }
      .row.aln-right {
        justify-content: flex-end; }
      .row.aln-top {
        align-items: flex-start; }
      .row.aln-middle {
        align-items: center; }
      .row.aln-bottom {
        align-items: flex-end; }
      .row > .imp-medium {
        order: -1; }
      .row > .col-1-medium {
        width: 8.3333333333%; }
      .row > .off-1-medium {
        margin-left: 8.3333333333%; }
      .row > .col-2-medium {
        width: 16.6666666667%; }
      .row > .off-2-medium {
        margin-left: 16.6666666667%; }
      .row > .col-3-medium {
        width: 25%; }
      .row > .off-3-medium {
        margin-left: 25%; }
      .row > .col-4-medium {
        width: 33.3333333333%; }
      .row > .off-4-medium {
        margin-left: 33.3333333333%; }
      .row > .col-5-medium {
        width: 41.6666666667%; }
      .row > .off-5-medium {
        margin-left: 41.6666666667%; }
      .row > .col-6-medium {
        width: 50%; }
      .row > .off-6-medium {
        margin-left: 50%; }
      .row > .col-7-medium {
        width: 58.3333333333%; }
      .row > .off-7-medium {
        margin-left: 58.3333333333%; }
      .row > .col-8-medium {
        width: 66.6666666667%; }
      .row > .off-8-medium {
        margin-left: 66.6666666667%; }
      .row > .col-9-medium {
        width: 75%; }
      .row > .off-9-medium {
        margin-left: 75%; }
      .row > .col-10-medium {
        width: 83.3333333333%; }
      .row > .off-10-medium {
        margin-left: 83.3333333333%; }
      .row > .col-11-medium {
        width: 91.6666666667%; }
      .row > .off-11-medium {
        margin-left: 91.6666666667%; }
      .row > .col-12-medium {
        width: 100%; }
      .row > .off-12-medium {
        margin-left: 100%; }
      .row.gtr-0 {
        margin-top: 0;
        margin-left: 0em; }
        .row.gtr-0 > * {
          padding: 0 0 0 0em; }
        .row.gtr-0.gtr-uniform {
          margin-top: 0em; }
          .row.gtr-0.gtr-uniform > * {
            padding-top: 0em; }
      .row.gtr-25 {
        margin-top: 0;
        margin-left: -0.375em; }
        .row.gtr-25 > * {
          padding: 0 0 0 0.375em; }
        .row.gtr-25.gtr-uniform {
          margin-top: -0.375em; }
          .row.gtr-25.gtr-uniform > * {
            padding-top: 0.375em; }
      .row.gtr-50 {
        margin-top: 0;
        margin-left: -0.75em; }
        .row.gtr-50 > * {
          padding: 0 0 0 0.75em; }
        .row.gtr-50.gtr-uniform {
          margin-top: -0.75em; }
          .row.gtr-50.gtr-uniform > * {
            padding-top: 0.75em; }
      .row {
        margin-top: 0;
        margin-left: -1.5em; }
        .row > * {
          padding: 0 0 0 1.5em; }
        .row.gtr-uniform {
          margin-top: -1.5em; }
          .row.gtr-uniform > * {
            padding-top: 1.5em; }
      .row.gtr-150 {
        margin-top: 0;
        margin-left: -2.25em; }
        .row.gtr-150 > * {
          padding: 0 0 0 2.25em; }
        .row.gtr-150.gtr-uniform {
          margin-top: -2.25em; }
          .row.gtr-150.gtr-uniform > * {
            padding-top: 2.25em; }
      .row.gtr-200 {
        margin-top: 0;
        margin-left: -3em; }
        .row.gtr-200 > * {
          padding: 0 0 0 3em; }
        .row.gtr-200.gtr-uniform {
          margin-top: -3em; }
          .row.gtr-200.gtr-uniform > * {
            padding-top: 3em; } }
  @media screen and (max-width: 768px) {
    .row {
      display: flex;
      flex-wrap: wrap;
      box-sizing: border-box;
      align-items: stretch; }
      .row > * {
        box-sizing: border-box; }
      .row.gtr-uniform > * > :last-child {
        margin-bottom: 0; }
      .row.aln-left {
        justify-content: flex-start; }
      .row.aln-center {
        justify-content: center; }
      .row.aln-right {
        justify-content: flex-end; }
      .row.aln-top {
        align-items: flex-start; }
      .row.aln-middle {
        align-items: center; }
      .row.aln-bottom {
        align-items: flex-end; }
      .row > .imp-small {
        order: -1; }
      .row > .col-1-small {
        width: 8.3333333333%; }
      .row > .off-1-small {
        margin-left: 8.3333333333%; }
      .row > .col-2-small {
        width: 16.6666666667%; }
      .row > .off-2-small {
        margin-left: 16.6666666667%; }
      .row > .col-3-small {
        width: 25%; }
      .row > .off-3-small {
        margin-left: 25%; }
      .row > .col-4-small {
        width: 33.3333333333%; }
      .row > .off-4-small {
        margin-left: 33.3333333333%; }
      .row > .col-5-small {
        width: 41.6666666667%; }
      .row > .off-5-small {
        margin-left: 41.6666666667%; }
      .row > .col-6-small {
        width: 50%; }
      .row > .off-6-small {
        margin-left: 50%; }
      .row > .col-7-small {
        width: 58.3333333333%; }
      .row > .off-7-small {
        margin-left: 58.3333333333%; }
      .row > .col-8-small {
        width: 66.6666666667%; }
      .row > .off-8-small {
        margin-left: 66.6666666667%; }
      .row > .col-9-small {
        width: 75%; }
      .row > .off-9-small {
        margin-left: 75%; }
      .row > .col-10-small {
        width: 83.3333333333%; }
      .row > .off-10-small {
        margin-left: 83.3333333333%; }
      .row > .col-11-small {
        width: 91.6666666667%; }
      .row > .off-11-small {
        margin-left: 91.6666666667%; }
      .row > .col-12-small {
        width: 100%; }
      .row > .off-12-small {
        margin-left: 100%; }
      .row.gtr-0 {
        margin-top: 0;
        margin-left: 0em; }
        .row.gtr-0 > * {
          padding: 0 0 0 0em; }
        .row.gtr-0.gtr-uniform {
          margin-top: 0em; }
          .row.gtr-0.gtr-uniform > * {
            padding-top: 0em; }
      .row.gtr-25 {
        margin-top: 0;
        margin-left: -0.375em; }
        .row.gtr-25 > * {
          padding: 0 0 0 0.375em; }
        .row.gtr-25.gtr-uniform {
          margin-top: -0.375em; }
          .row.gtr-25.gtr-uniform > * {
            padding-top: 0.375em; }
      .row.gtr-50 {
        margin-top: 0;
        margin-left: -0.75em; }
        .row.gtr-50 > * {
          padding: 0 0 0 0.75em; }
        .row.gtr-50.gtr-uniform {
          margin-top: -0.75em; }
          .row.gtr-50.gtr-uniform > * {
            padding-top: 0.75em; }
      .row {
        margin-top: 0;
        margin-left: -1.5em; }
        .row > * {
          padding: 0 0 0 1.5em; }
        .row.gtr-uniform {
          margin-top: -1.5em; }
          .row.gtr-uniform > * {
            padding-top: 1.5em; }
      .row.gtr-150 {
        margin-top: 0;
        margin-left: -2.25em; }
        .row.gtr-150 > * {
          padding: 0 0 0 2.25em; }
        .row.gtr-150.gtr-uniform {
          margin-top: -2.25em; }
          .row.gtr-150.gtr-uniform > * {
            padding-top: 2.25em; }
      .row.gtr-200 {
        margin-top: 0;
        margin-left: -3em; }
        .row.gtr-200 > * {
          padding: 0 0 0 3em; }
        .row.gtr-200.gtr-uniform {
          margin-top: -3em; }
          .row.gtr-200.gtr-uniform > * {
            padding-top: 3em; } }
  @media screen and (max-width: 480px) {
    .row {
      display: flex;
      flex-wrap: wrap;
      box-sizing: border-box;
      align-items: stretch; }
      .row > * {
        box-sizing: border-box; }
      .row.gtr-uniform > * > :last-child {
        margin-bottom: 0; }
      .row.aln-left {
        justify-content: flex-start; }
      .row.aln-center {
        justify-content: center; }
      .row.aln-right {
        justify-content: flex-end; }
      .row.aln-top {
        align-items: flex-start; }
      .row.aln-middle {
        align-items: center; }
      .row.aln-bottom {
        align-items: flex-end; }
      .row > .imp-xsmall {
        order: -1; }
      .row > .col-1-xsmall {
        width: 8.3333333333%; }
      .row > .off-1-xsmall {
        margin-left: 8.3333333333%; }
      .row > .col-2-xsmall {
        width: 16.6666666667%; }
      .row > .off-2-xsmall {
        margin-left: 16.6666666667%; }
      .row > .col-3-xsmall {
        width: 25%; }
      .row > .off-3-xsmall {
        margin-left: 25%; }
      .row > .col-4-xsmall {
        width: 33.3333333333%; }
      .row > .off-4-xsmall {
        margin-left: 33.3333333333%; }
      .row > .col-5-xsmall {
        width: 41.6666666667%; }
      .row > .off-5-xsmall {
        margin-left: 41.6666666667%; }
      .row > .col-6-xsmall {
        width: 50%; }
      .row > .off-6-xsmall {
        margin-left: 50%; }
      .row > .col-7-xsmall {
        width: 58.3333333333%; }
      .row > .off-7-xsmall {
        margin-left: 58.3333333333%; }
      .row > .col-8-xsmall {
        width: 66.6666666667%; }
      .row > .off-8-xsmall {
        margin-left: 66.6666666667%; }
      .row > .col-9-xsmall {
        width: 75%; }
      .row > .off-9-xsmall {
        margin-left: 75%; }
      .row > .col-10-xsmall {
        width: 83.3333333333%; }
      .row > .off-10-xsmall {
        margin-left: 83.3333333333%; }
      .row > .col-11-xsmall {
        width: 91.6666666667%; }
      .row > .off-11-xsmall {
        margin-left: 91.6666666667%; }
      .row > .col-12-xsmall {
        width: 100%; }
      .row > .off-12-xsmall {
        margin-left: 100%; }
      .row.gtr-0 {
        margin-top: 0;
        margin-left: 0em; }
        .row.gtr-0 > * {
          padding: 0 0 0 0em; }
        .row.gtr-0.gtr-uniform {
          margin-top: 0em; }
          .row.gtr-0.gtr-uniform > * {
            padding-top: 0em; }
      .row.gtr-25 {
        margin-top: 0;
        margin-left: -0.375em; }
        .row.gtr-25 > * {
          padding: 0 0 0 0.375em; }
        .row.gtr-25.gtr-uniform {
          margin-top: -0.375em; }
          .row.gtr-25.gtr-uniform > * {
            padding-top: 0.375em; }
      .row.gtr-50 {
        margin-top: 0;
        margin-left: -0.75em; }
        .row.gtr-50 > * {
          padding: 0 0 0 0.75em; }
        .row.gtr-50.gtr-uniform {
          margin-top: -0.75em; }
          .row.gtr-50.gtr-uniform > * {
            padding-top: 0.75em; }
      .row {
        margin-top: 0;
        margin-left: -1.5em; }
        .row > * {
          padding: 0 0 0 1.5em; }
        .row.gtr-uniform {
          margin-top: -1.5em; }
          .row.gtr-uniform > * {
            padding-top: 1.5em; }
      .row.gtr-150 {
        margin-top: 0;
        margin-left: -2.25em; }
        .row.gtr-150 > * {
          padding: 0 0 0 2.25em; }
        .row.gtr-150.gtr-uniform {
          margin-top: -2.25em; }
          .row.gtr-150.gtr-uniform > * {
            padding-top: 2.25em; }
      .row.gtr-200 {
        margin-top: 0;
        margin-left: -3em; }
        .row.gtr-200 > * {
          padding: 0 0 0 3em; }
        .row.gtr-200.gtr-uniform {
          margin-top: -3em; }
          .row.gtr-200.gtr-uniform > * {
            padding-top: 3em; } }

/* Section/Article */
section.special, article.special {
  text-align: center; }

header p {
  font-family: "メイリオ", "ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", "Osaka", Arial, sans-serif;
  font-size: 1em;
  font-weight: 400;
  letter-spacing: 0.075em;
  margin-top: -0.5em;
  text-transform: uppercase; }
header.major > :last-child {
  border-bottom: solid 3px #119dc7;
  display: inline-block;
  margin: 0 0 2em 0;
  padding: 0 0.75em 0.5em 0; }
header.main > :last-child {
  margin: 0 0 1em 0; }

/* Table */
.table-wrapper {
  -webkit-overflow-scrolling: touch;
  overflow-x: auto; }

table {
  /*margin: 0 0 _size(element-margin) 0;*/
  margin: 0;
  width: 100%; }
  table tbody tr {
    border: solid 1px rgba(210, 215, 217, 0.75);
    border-left: 0;
    border-right: 0; }
    table tbody tr:nth-child(2n + 1) {
      background-color: rgba(230, 235, 237, 0.25); }
    table tbody tr:hover {
      background-color: #eef1df; }
  table td {
    padding: 0.5em 0.2em;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    text-align: center;
    font-size: 0.95em; }
    table td .multi-record {
      display: flex;
      flex-direction: column; }
      table td .multi-record span {
        font-size: 0.9em;
        line-height: 1.3em;
        text-overflow: ellipsis;
        white-space: nowrap;
        overflow: hidden; }
    table td.image {
      padding: 0 0.2em;
      display: table-cell;
      text-align: -webkit-center; }
      table td.image img {
        width: 50px;
        height: 50px;
        object-fit: cover; }
    table td.img-icon {
      display: flex;
      align-items: center;
      justify-content: center;
      height: 50px; }
      table td.img-icon img {
        height: 25px;
        object-fit: cover;
        border: 1px solid #dbdbdb; }
  table th {
    color: #3d4449;
    background-color: #e5e5e5;
    font-size: 0.9em;
    font-weight: 600;
    line-height: 1.1em;
    padding: 0.5em 0.2em;
    text-align: center;
    white-space: nowrap; }
    table th span {
      font-size: 0.8em;
      line-height: 0.8em;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #686868;
      padding-top: 3px; }
  table thead {
    border-bottom: solid 2px rgba(210, 215, 217, 0.75); }
  table tfoot {
    border-top: solid 2px rgba(210, 215, 217, 0.75); }
  table.alt {
    border-collapse: separate; }
    table.alt tbody tr td {
      border: solid 1px rgba(210, 215, 217, 0.75);
      border-left-width: 0;
      border-top-width: 0; }
      table.alt tbody tr td:first-child {
        border-left-width: 1px; }
    table.alt tbody tr:first-child td {
      border-top-width: 1px; }
    table.alt thead {
      border-bottom: 0; }
    table.alt tfoot {
      border-top: 0; }

.link {
  color: #119dc7;
  text-decoration: underline;
  cursor: pointer; }
  .link:hover {
    color: #ffa000; }

.breadcrumbs {
  width: 100%;
  font-size: 14px;
  line-height: 16px;
  margin-bottom: 5px; }
  .breadcrumbs a {
    display: contents;
    color: #666666;
    cursor: pointer; }
    .breadcrumbs a:hover {
      color: #119dc7; }

.help-tip {
  margin-left: 10px;
  font-size: 20px;
  position: relative;
  top: -1px;
  cursor: pointer; }
  .help-tip:hover {
    color: #ffa000; }

.jk-translate {
  width: fit-content;
  font-size: 12px;
  line-height: 12px;
  padding: 3px 15px;
  border: 1px solid #eaeaea;
  border-radius: 3px;
  cursor: pointer; }
  .jk-translate:hover {
    color: #ffffff;
    background-color: #666666; }
  .jk-translate:active {
    margin: 1px -1px -1px 1px; }

.must {
  color: #d5688d;
  margin-left: 10px;
  font-size: 16px;
  line-height: 1px; }

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ Utility

   コンポネント(component)以外の再利用可能な最小単位モジュール
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.no-record {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: #cbcbcb;
  background-color: #f7f7f7;
  border-radius: 10px;
  padding: 20px;
  height: 300px; }
  .no-record .symbol {
    background-image: url(images/search_document.svg);
    background-position: center center;
    background-repeat: no-repeat;
    width: 80px;
    height: 80px;
    margin-bottom: 22px; }
  @media screen and (max-width: 980px) {
    .no-record {
      height: 300px; } }
  @media screen and (max-width: 768px) {
    .no-record {
      height: 250px; } }
  .no-record .message {
    width: fit-content;
    font-size: 1.5em;
    text-align: left; }
    @media screen and (max-width: 980px) {
      .no-record .message {
        font-size: 1.4em; } }
    @media screen and (max-width: 768px) {
      .no-record .message {
        font-size: 1.3em; } }
  .no-record span {
    font-size: 80px; }

.help-text {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  cursor: help; }
  .help-text .icon {
    font-size: 21px;
    color: #037acf;
    padding: 0 0 2px 5px !important; }

/*-------------------------------------------------------------------------------------------------
▼統合検索補助ツール
-------------------------------------------------------------------------------------------------*/
.search-helper {
  display: none;
  position: absolute;
  width: 100%;
  height: 0;
  background-color: #fbfbfb;
  border: 6px solid #e7e7e7;
  box-shadow: 3px 3px 2px -2px #000000cf;
  z-index: 1;
  overflow-x: hidden;
  overflow-y: auto;
  max-width: 100%;
  min-width: 300px; }
  @media screen and (max-width: 768px) {
    .search-helper {
      position: relative;
      width: 100% !important;
      left: unset !important;
      top: unset !important;
      min-width: unset;
      margin-top: 10px; } }
  .search-helper .no-search-history {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #adadad;
    pointer-events: none; }
    .search-helper .no-search-history .ico {
      font-size: 40px; }
    .search-helper .no-search-history .txt {
      font-size: 14px;
      margin-top: 7px; }

/*-------------------------------------------------------------------------------------------------
▼情報変更POPUP
-------------------------------------------------------------------------------------------------*/
.edit-popup {
  width: 100%;
  max-height: 100%;
  padding: 5px; }
  .edit-popup .detail-area {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    border: 2px solid #dfdfdf;
    padding: 7px 10px;
    border-radius: 2px; }
    .edit-popup .detail-area .item {
      display: flex;
      flex-direction: column;
      justify-content: space-around;
      padding: 0 0.3em; }
      .edit-popup .detail-area .item .tag {
        font-size: 0.9em;
        line-height: 1.4em;
        white-space: nowrap;
        margin-top: 0.3em; }
      .edit-popup .detail-area .item .field {
        display: flex;
        align-items: center;
        flex-wrap: wrap; }
      .edit-popup .detail-area .item .multi {
        display: flex;
        flex-wrap: nowrap; }
      .edit-popup .detail-area .item .field select, .edit-popup .detail-area .item .field a, .edit-popup .detail-area .item .field input[type='text'], .edit-popup .detail-area .item .field input[type='date'], .edit-popup .detail-area .item .field input[type='time'], .edit-popup .detail-area .item .multi select, .edit-popup .detail-area .item .multi a, .edit-popup .detail-area .item .multi input[type='text'], .edit-popup .detail-area .item .multi input[type='date'], .edit-popup .detail-area .item .multi input[type='time'] {
        height: 2.0em;
        font-size: 14px;
        padding: 0 5px; }
      .edit-popup .detail-area .item .field .select2-selection--single, .edit-popup .detail-area .item .multi .select2-selection--single {
        height: 2.0em;
        font-size: 14px; }
    .edit-popup .detail-area .must {
      color: #e56b6b;
      margin-left: 8px;
      font-size: 1em; }
  .edit-popup .button-area {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    margin: 10px 0;
    padding: 10px 0;
    position: sticky;
    bottom: 15px;
    background-color: #ffffffab; }
    .edit-popup .button-area .info {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: center;
      background-color: #084355;
      margin: 25px 0px -20px;
      padding: 10px; }
      .edit-popup .button-area .info .tag {
        font-size: 20px;
        line-height: 20px;
        font-weight: bold;
        color: #ffffff; }
      .edit-popup .button-area .info .strong {
        font-size: 40px;
        line-height: 40px;
        font-weight: bold;
        color: #00e2ff;
        margin: 0 20px; }
    .edit-popup .button-area .btn {
      margin: 0 10px; }

/*-------------------------------------------------------------------------------------------------
▼情報検索・選択POPUP
-------------------------------------------------------------------------------------------------*/
.search-popup {
  width: 100%;
  min-height: 450px;
  max-height: 100%;
  padding: 5px; }
  .search-popup .search-area {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    border: 2px solid #dfdfdf;
    padding: 7px 10px;
    border-radius: 2px; }
    .search-popup .search-area .item {
      display: flex;
      flex-direction: column;
      justify-content: space-around;
      padding: 0 0.3em; }
      .search-popup .search-area .item .tag {
        font-size: 0.7em;
        line-height: 1.4em;
        white-space: nowrap;
        margin-top: 0.3em; }
      .search-popup .search-area .item .condition {
        display: flex;
        align-items: center;
        flex-wrap: nowrap; }
        .search-popup .search-area .item .condition a, .search-popup .search-area .item .condition input[type='text'], .search-popup .search-area .item .condition input[type='date'] {
          height: 1.75em;
          font-size: 14px;
          padding: 0 5px; }
        .search-popup .search-area .item .condition select {
          height: 1.75em;
          font-size: 14px;
          padding: 0 28px 0 7px; }
        .search-popup .search-area .item .condition .select2-selection--single {
          height: 1.75em;
          font-size: 14px; }
        .search-popup .search-area .item .condition .clear {
          display: flex;
          align-items: center;
          box-shadow: inset 0 0 0 1px #c9c9c9;
          color: #b3b3b3 !important;
          background-color: #f4f4f4;
          letter-spacing: -2px;
          padding: 0 9px; }
  .search-popup .list-area {
    width: 100%;
    margin: 5px 0; }
    .search-popup .list-area .table-wrap {
      overflow-x: auto;
      scrollbar-width: thin;
      scrollbar-color: #17585d #ccc; }
      .search-popup .list-area .table-wrap table tr th {
        font-size: 0.8em;
        padding: 0.3em 0.2em; }
      .search-popup .list-area .table-wrap table tr td {
        font-size: 0.85em;
        padding: 0.2em 0.2em; }
        .search-popup .list-area .table-wrap table tr td .multi-record span {
          font-size: 0.85em; }
        .search-popup .list-area .table-wrap table tr td img {
          width: 40px;
          height: 36px; }
    .search-popup .list-area .table-wrap::-webkit-scrollbar {
      height: 7px; }
    .search-popup .list-area .table-wrap::-webkit-scrollbar-track {
      background-color: #ccc; }
    .search-popup .list-area .table-wrap::-webkit-scrollbar-thumb {
      background-color: #db8403; }

/*-------------------------------------------------------------------------------------------------
▼ファイルアップロードブロック
-------------------------------------------------------------------------------------------------*/
.file-uploader {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  /*タグなしバージョン*/ }
  .file-uploader .file-selecter {
    display: flex;
    flex-wrap: wrap;
    padding: 10px;
    border: 1px solid #ededed;
    align-items: center;
    max-width: 100%; }
    .file-uploader .file-selecter label {
      display: flex;
      align-items: center;
      color: #555555;
      font-weight: normal;
      background-color: #f5f5f5;
      border: 1px solid #d9d9d9;
      margin: 0px 10px 0px 0px;
      padding: 2px 15px;
      border-radius: 5px;
      white-space: nowrap;
      cursor: pointer; }
      .file-uploader .file-selecter label .ico {
        font-size: 20px;
        padding: 0 0 2px 0; }
      .file-uploader .file-selecter label:hover {
        color: #ffffff;
        background-color: #494949;
        border: 1px solid #494949; }
    .file-uploader .file-selecter input[type="file"] {
      display: none; }
    .file-uploader .file-selecter p {
      font-weight: normal;
      font-size: 16px;
      line-height: 20px;
      overflow: hidden;
      padding: 10px 0; }
  .file-uploader .image-viewer {
    width: 100%; }
    .file-uploader .image-viewer .photos {
      display: flex;
      flex-wrap: wrap;
      align-items: flex-start; }
      .file-uploader .image-viewer .photos .photo {
        width: 31.3%;
        margin: 1%;
        position: relative; }
        @media screen and (max-width: 980px) {
          .file-uploader .image-viewer .photos .photo {
            width: 48%;
            margin: 1%; } }
        @media screen and (max-width: 768px) {
          .file-uploader .image-viewer .photos .photo {
            width: 98%;
            margin: 1%;
            max-width: 300px; } }
        .file-uploader .image-viewer .photos .photo:first-child .controls .left {
          display: none; }
        .file-uploader .image-viewer .photos .photo:last-child .controls .right {
          display: none; }
        .file-uploader .image-viewer .photos .photo img {
          width: 100%; }
        .file-uploader .image-viewer .photos .photo .controls {
          display: flex;
          position: absolute;
          top: 5px;
          right: 5px;
          z-index: 1; }
          .file-uploader .image-viewer .photos .photo .controls .control {
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 22px;
            color: #ffffff;
            background-color: #0e0e0e3d;
            padding: 4px;
            margin-left: 10px;
            cursor: pointer; }
            .file-uploader .image-viewer .photos .photo .controls .control:hover {
              color: #e8ff00;
              background-color: #000000; }
        .file-uploader .image-viewer .photos .photo .description {
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          display: flex;
          align-items: center;
          justify-content: center; }
          .file-uploader .image-viewer .photos .photo .description .msg {
            font-size: 20px;
            color: #ffffff;
            padding: 10px;
            background-color: #0e0e0e3d; }
  .file-uploader.no-tag .file-selecter {
    padding: 0;
    border: unset; }
    .file-uploader.no-tag .file-selecter label {
      border: unset;
      background-color: unset;
      padding: 0; }
      .file-uploader.no-tag .file-selecter label .ico {
        font-size: 30px;
        margin: 0; }
      .file-uploader.no-tag .file-selecter label:hover {
        color: unset;
        background-color: unset;
        border: unset; }
  .file-uploader.no-tag .image-viewer .photos .photo {
    width: 150px;
    height: 150px; }
    .file-uploader.no-tag .image-viewer .photos .photo img {
      height: 100%;
      object-fit: cover; }

/*-------------------------------------------------------------------------------------------------
▼画像一覧
-------------------------------------------------------------------------------------------------*/
.image-thumbnail-list {
  width: 100%;
  display: flex;
  flex-wrap: wrap; }
  .image-thumbnail-list .image, .image-thumbnail-list .photo {
    overflow: hidden;
    border: 1px solid #e7e7e7;
    border-radius: 10px;
    background-color: #dbd6c1;
    position: relative;
    width: 24.5%;
    height: 240px;
    margin: 5px 0.25%; }
    @media screen and (max-width: 980px) {
      .image-thumbnail-list .image, .image-thumbnail-list .photo {
        width: 32.8%;
        height: 220px;
        margin: 5px 0.26%; } }
    @media screen and (max-width: 768px) {
      .image-thumbnail-list .image, .image-thumbnail-list .photo {
        width: 49.0%;
        height: 200px;
        margin: 5px 0.50%; } }
    @media screen and (max-width: 480px) {
      .image-thumbnail-list .image, .image-thumbnail-list .photo {
        width: 100.0%;
        height: 200px;
        margin: 5px 0%; } }
    .image-thumbnail-list .image.small, .image-thumbnail-list .photo.small {
      width: 23.802%;
      height: 150px;
      margin: 5px 0.60%; }
      @media screen and (max-width: 980px) {
        .image-thumbnail-list .image.small, .image-thumbnail-list .photo.small {
          width: 32.1%;
          height: 140px;
          margin: 5px 0.60%; } }
      @media screen and (max-width: 768px) {
        .image-thumbnail-list .image.small, .image-thumbnail-list .photo.small {
          width: 32.1%;
          height: 140px;
          margin: 5px 0.60%; } }
      @media screen and (max-width: 360px) {
        .image-thumbnail-list .image.small, .image-thumbnail-list .photo.small {
          width: 48.8%;
          height: 140px;
          margin: 5px 0.60%; } }
    .image-thumbnail-list .image.large, .image-thumbnail-list .photo.large {
      width: 32.1%;
      height: 240px;
      margin: 5px 0.60%; }
      @media screen and (max-width: 1280px) {
        .image-thumbnail-list .image.large, .image-thumbnail-list .photo.large {
          width: 32.1%;
          height: 180px;
          margin: 5px 0.60%; } }
      @media screen and (max-width: 980px) {
        .image-thumbnail-list .image.large, .image-thumbnail-list .photo.large {
          width: 32.1%;
          height: 180px;
          margin: 5px 0.60%; } }
      @media screen and (max-width: 768px) {
        .image-thumbnail-list .image.large, .image-thumbnail-list .photo.large {
          width: 48.8%;
          height: 180px;
          margin: 5px 0.60%; } }
      @media screen and (max-width: 360px) {
        .image-thumbnail-list .image.large, .image-thumbnail-list .photo.large {
          width: 98.8%;
          height: 180px;
          margin: 5px 0.60%; } }
    .image-thumbnail-list .image:hover, .image-thumbnail-list .photo:hover {
      opacity: 1; }
      .image-thumbnail-list .image:hover img, .image-thumbnail-list .photo:hover img {
        transform: scale(1.05, 1.05);
        transition: 1s all; }
      .image-thumbnail-list .image:hover .title, .image-thumbnail-list .image:hover .tags, .image-thumbnail-list .photo:hover .title, .image-thumbnail-list .photo:hover .tags {
        transition: opacity 0.3s 0.5s ease-in;
        opacity: 0; }
    .image-thumbnail-list .image.keep-tag:hover .title, .image-thumbnail-list .image.keep-tag:hover .tags, .image-thumbnail-list .photo.keep-tag:hover .title, .image-thumbnail-list .photo.keep-tag:hover .tags {
      transition: unset;
      opacity: 1; }
    .image-thumbnail-list .image img, .image-thumbnail-list .photo img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
    .image-thumbnail-list .image .title, .image-thumbnail-list .photo .title {
      position: absolute;
      bottom: 0;
      width: 100%;
      background-color: #0000007d;
      padding: 5px 10px;
      pointer-events: none;
      display: flex;
      flex-direction: column; }
      .image-thumbnail-list .image .title .txt, .image-thumbnail-list .image .title .price, .image-thumbnail-list .photo .title .txt, .image-thumbnail-list .photo .title .price {
        color: #ffffff;
        font-size: 16px;
        line-height: 20px;
        text-overflow: ellipsis;
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2; }
        @media screen and (max-width: 980px) {
          .image-thumbnail-list .image .title .txt, .image-thumbnail-list .image .title .price, .image-thumbnail-list .photo .title .txt, .image-thumbnail-list .photo .title .price {
            font-size: 14px;
            line-height: 16px; } }
        @media screen and (max-width: 360px) {
          .image-thumbnail-list .image .title .txt, .image-thumbnail-list .image .title .price, .image-thumbnail-list .photo .title .txt, .image-thumbnail-list .photo .title .price {
            font-size: 13px;
            line-height: 15px; } }
      .image-thumbnail-list .image .title .price, .image-thumbnail-list .photo .title .price {
        color: #ffffb4; }
    .image-thumbnail-list .image .tags, .image-thumbnail-list .photo .tags {
      position: absolute;
      top: 10px;
      left: 0;
      width: 100%;
      padding: 0 14px;
      display: flex; }
      .image-thumbnail-list .image .tags .tag, .image-thumbnail-list .photo .tags .tag {
        padding: 4px 6px 2px;
        border-radius: 3px;
        font-size: 14px;
        line-height: 14px;
        color: #ffffff;
        background-color: #00000066; }
        .image-thumbnail-list .image .tags .tag.yellow, .image-thumbnail-list .photo .tags .tag.yellow {
          color: #ffffff;
          background-color: #ffc107c9; }
        .image-thumbnail-list .image .tags .tag.blue, .image-thumbnail-list .photo .tags .tag.blue {
          color: #ffffff;
          background-color: #03a9f49e; }
        .image-thumbnail-list .image .tags .tag.red, .image-thumbnail-list .photo .tags .tag.red {
          color: #ffffff;
          background-color: #F44336; }
    .image-thumbnail-list .image .del, .image-thumbnail-list .photo .del {
      position: absolute !important;
      right: 8px;
      top: 8px;
      display: flex !important;
      align-items: center;
      justify-content: center;
      color: #ffffff;
      background-color: #a5a5a569;
      border: 1px solid #ffffff;
      border-radius: 16px;
      width: 30px;
      height: 30px;
      cursor: pointer; }
      .image-thumbnail-list .image .del:hover, .image-thumbnail-list .photo .del:hover {
        background-color: #ffa5a5;
        transition: 1s all; }
      .image-thumbnail-list .image .del:active, .image-thumbnail-list .photo .del:active {
        width: 28px;
        height: 28px;
        right: 9px;
        top: 9px; }

/*-------------------------------------------------------------------------------------------------
▼提供サービスタグ
-------------------------------------------------------------------------------------------------*/
.service-tags {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  margin-top: 15px; }
  .service-tags .service-tag {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    margin: 0 10px 10px 0; }
    .service-tags .service-tag .category {
      padding: 0 10px 0 15px;
      color: #ffffff;
      background-color: #4f4e4e;
      border-radius: 15px 0 0 15px;
      font-size: 14px;
      line-height: 14px;
      display: flex;
      align-items: center; }
      @media screen and (max-width: 768px) {
        .service-tags .service-tag .category {
          font-size: 12px;
          line-height: 12px;
          padding: 0 8px 0 10px; } }
    .service-tags .service-tag .service {
      padding: 8px 20px;
      color: #756e59;
      background-color: #ebe9e0;
      border-radius: 0 18px 18px 0;
      font-size: 16px;
      line-height: 16px;
      border-top: 1px solid #c1bcab;
      border-bottom: 1px solid #c1bcab;
      border-right: 1px solid #c1bcab; }
      @media screen and (max-width: 768px) {
        .service-tags .service-tag .service {
          font-size: 14px;
          line-height: 14px;
          padding: 8px 10px; } }
    .service-tags .service-tag:before {
      position: absolute;
      top: 4px;
      left: 5px; }

/*-------------------------------------------------------------------------------------------------
▼ボタンのSticky
-------------------------------------------------------------------------------------------------*/
.command.sticky, .action.sticky {
  position: sticky;
  bottom: 0;
  background-color: #ffffffd4;
  z-index: 1; }

/*-------------------------------------------------------------------------------------------------
▼自作セレクトボックス
-------------------------------------------------------------------------------------------------*/
.multiline-select-box {
  width: 100%; }
  .multiline-select-box .selected-item {
    width: 100%;
    box-sizing: border-box;
    border: 2px solid #a7a7a7;
    border-radius: 5px;
    padding: 10px 30px 10px 10px;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    position: relative; }
    .multiline-select-box .selected-item:hover {
      border: 2px solid #666666; }
    .multiline-select-box .selected-item:focus, .multiline-select-box .selected-item:active {
      border: 2px solid #119dc7; }
    .multiline-select-box .selected-item:before {
      font-family: 'Font Awesome 5 Free';
      font-size: 16px;
      line-height: 16px;
      position: absolute;
      top: 50%;
      right: 4px;
      content: '\f078';
      color: #b9b9b9;
      font-weight: bold;
      transform: translate(-50%, -50%); }
  .multiline-select-box .select-box {
    width: 250px;
    border: 1px solid #d7d7d7;
    background-color: #ffffff;
    position: absolute;
    z-index: 1; }
    .multiline-select-box .select-box li {
      cursor: default;
      box-sizing: border-box;
      padding: 5px 10px;
      cursor: pointer;
      display: flex;
      flex-direction: column;
      border-bottom: 1px solid #eaeaea; }
      .multiline-select-box .select-box li:hover {
        background-color: #f7f7f7 !important; }
  .multiline-select-box .main {
    font-size: 16px;
    line-height: 18px;
    width: 100%;
    color: #666666;
    word-break: break-all; }
    .multiline-select-box .main .strong {
      font-weight: bold; }
  .multiline-select-box .sub {
    margin-top: 4px;
    font-size: 12px;
    line-height: 14px;
    width: 100%;
    color: #a3a3a3;
    word-break: break-all;
    text-overflow: ellipsis;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2; }

/*-------------------------------------------------------------------------------------------------
▼各種マーク
-------------------------------------------------------------------------------------------------*/
.mark-verify {
  padding: 2px 6px 4px;
  color: #ffffff;
  font-size: 11px;
  line-height: 11px;
  font-weight: 300;
  border-radius: 10px;
  border: 1px solid #ffffff;
  background: linear-gradient(to bottom, #858585de, #161616de); }
  @media screen and (max-width: 768px) {
    .mark-verify {
      padding: 4px 6px 4px; } }
  .mark-verify:before {
    margin-right: 5px;
    color: #9eff2e; }
  .mark-verify.submitted {
    color: #ffffff;
    background: linear-gradient(to bottom, #f44336d9, #b72d23);
    border: 1px solid #ffffff; }
    .mark-verify.submitted:before {
      margin-right: 5px;
      color: #ffeb3b; }

/*-------------------------------------------------------------------------------------------------
▼言語切り替えスイッチ
-------------------------------------------------------------------------------------------------*/
.language-switch-wrap {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #ffffff; }

.language-switch {
  display: flex;
  -webkit-tap-highlight-color: transparent;
  font-family: Arial, Helvetica, sans-serif;
  position: relative;
  width: 120px;
  min-width: 120px;
  height: 36px;
  overflow: hidden;
  margin-left: 24px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  /*スマホ長押し時の画像保存を止める*/
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -webkit-user-drag: none;
  -khtml-user-drag: none; }
  @media screen and (max-width: 768px) {
    .language-switch.pc {
      display: none; } }
  .language-switch.sp {
    display: none; }
    @media screen and (max-width: 768px) {
      .language-switch.sp {
        display: flex;
        width: 140px;
        margin: 20px 0 20px; } }
  .language-switch.r {
    border-radius: 100px; }
    .language-switch.r .layer {
      border-radius: 100px; }
  .language-switch .checkbox {
    -moz-appearance: initial;
    -webkit-appearance: initial;
    -ms-appearance: initial;
    appearance: initial;
    position: relative;
    width: 100%;
    height: 100%;
    padding: 0;
    margin: 0;
    opacity: 0;
    cursor: pointer;
    z-index: 3; }
  .language-switch .knobs,
  .language-switch .layer {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0; }
  .language-switch .knobs {
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center; }
    .language-switch .knobs:before {
      content: "JP";
      position: absolute;
      top: 4px;
      left: 4px;
      width: 60px;
      height: 28px;
      color: #fff;
      font-size: 10px;
      font-weight: bold;
      text-align: right;
      line-height: 1;
      padding: 9px 10px;
      background-color: #03a9f4;
      border-radius: 16px;
      transition: 0.3s ease all, left 0.3s cubic-bezier(0.18, 0.89, 0.35, 1.15);
      background-image: url(images/japan_ico.png);
      background-size: 20px auto;
      background-repeat: no-repeat;
      background-position: 12px center; }
      @media screen and (max-width: 768px) {
        .language-switch .knobs:before {
          width: 70px;
          padding: 9px 14px;
          background-position: 15px center; } }
    .language-switch .knobs .back {
      width: 100%;
      display: flex; }
      .language-switch .knobs .back .jp, .language-switch .knobs .back .kr {
        width: 50%;
        font-size: 10px;
        font-weight: bold;
        text-align: center;
        line-height: 1;
        padding: 9px 4px; }
  .language-switch .layer {
    width: 100%;
    /*background-color: #ebf7fc;*/
    background-color: #f1f1f1;
    transition: 0.3s ease all;
    z-index: 1; }
  .language-switch .checkbox:active + .knobs:before {
    width: 60px;
    border-radius: 100px;
    left: 14px; }
    @media screen and (max-width: 768px) {
      .language-switch .checkbox:active + .knobs:before {
        width: 70px; } }
  .language-switch .checkbox:checked:active + .knobs:before {
    margin-left: -10px; }
  .language-switch .checkbox:checked + .knobs:before {
    content: "KR";
    left: 56px;
    background-color: #f44336;
    text-align: left;
    background-image: url(images/korea_ico.png);
    background-position: 30px center; }
    @media screen and (max-width: 768px) {
      .language-switch .checkbox:checked + .knobs:before {
        left: 66px;
        background-position: 37px center; } }
  .language-switch .checkbox:checked ~ .layer {
    /*background-color: #fcebeb;*/
    background-color: #f1f1f1; }

/*-------------------------------------------------------------------------------------------------
▼よくある質問
-------------------------------------------------------------------------------------------------*/
.q-and-a {
  width: 650px;
  max-width: 100%;
  display: flex;
  flex-direction: column; }
  .q-and-a .q-and-a-one {
    width: 100%;
    display: flex;
    flex-direction: column;
    border-bottom: 1px solid #efefef; }
    .q-and-a .q-and-a-one:first-child {
      border-top: 1px solid #efefef; }
    .q-and-a .q-and-a-one .question, .q-and-a .q-and-a-one .answer {
      background-size: 70px 70px;
      background-repeat: no-repeat;
      background-position: -10px -9px; }
    .q-and-a .q-and-a-one .question {
      background-image: url(images/question.svg);
      position: relative;
      padding: 13px 30px 13px 50px;
      cursor: pointer; }
      .q-and-a .q-and-a-one .question:after {
        font-family: 'Font Awesome 5 Free';
        font-size: 18px;
        font-weight: bold;
        line-height: 18px;
        position: absolute;
        top: 50%;
        right: -8px;
        height: 28px;
        padding: 5px;
        content: '\f078';
        color: #a9a9a9;
        border-radius: 10px 10px 0 0;
        transform: translate(-50%, -50%); }
      .q-and-a .q-and-a-one .question:hover {
        color: #bf9651; }
      .q-and-a .q-and-a-one .question.active:after {
        font-family: 'Font Awesome 5 Free';
        font-size: 18px;
        font-weight: bold;
        line-height: 18px;
        position: absolute;
        top: 50%;
        right: -8px;
        height: 28px;
        padding: 5px;
        content: '\f077';
        color: #a9a9a9;
        border-radius: 10px 10px 0 0;
        transform: translate(-50%, -50%); }
    .q-and-a .q-and-a-one .answer {
      background-image: url(images/answer.svg);
      padding: 13px 10px 13px 50px;
      display: none; }

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ COMMON

   単位や選択肢などの定義
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.status-normal {
  color: #03a9f4; }

.status-stop {
  color: #e7086f; }

.status-ready {
  color: #ff9800; }

.verify-status-notyet {
  color: #b3b3b3; }

.verify-status-request {
  color: #ff1d6a; }

.verify-status-verified {
  color: #03a9f4; }

.verify-status-rejected {
  color: #ad70b7; }

.verify-status-rerequest {
  color: #ff1d6a; }

.max-w-100 {
  max-width: 100px; }

.max-w-120 {
  max-width: 120px; }

.max-w-150 {
  max-width: 150px; }

.max-w-200 {
  max-width: 200px; }

.max-w-250 {
  max-width: 250px; }

.max-w-300 {
  max-width: 300px; }

.min-w-30 {
  min-width: 30px !important; }

.min-w-40 {
  min-width: 40px !important; }

.min-w-60 {
  min-width: 60px !important; }

.min-w-100 {
  min-width: 100px !important; }

.min-w-120 {
  min-width: 120px !important; }

.min-w-150 {
  min-width: 150px !important; }

.min-w-200 {
  min-width: 200px !important; }

.w-100-per {
  width: 100% !important; }

.w-50-per {
  width: 50% !important; }
  @media screen and (max-width: 480px) {
    .w-50-per {
      width: 100% !important; } }

.w-33-per {
  width: 33% !important; }
  @media screen and (max-width: 768px) {
    .w-33-per {
      width: 50% !important; } }
  @media screen and (max-width: 480px) {
    .w-33-per {
      width: 100% !important; } }

.w-25-per {
  width: 25% !important; }
  @media screen and (max-width: 980px) {
    .w-25-per {
      width: 33% !important; } }
  @media screen and (max-width: 768px) {
    .w-25-per {
      width: 50% !important; } }
  @media screen and (max-width: 480px) {
    .w-25-per {
      /*width: 100% !important;*/
      width: auto !important; } }

.w-20-per {
  width: 20% !important; }
  @media screen and (max-width: 768px) {
    .w-20-per {
      width: 33% !important; } }
  @media screen and (max-width: 480px) {
    .w-20-per {
      width: 50% !important; } }

.w-50 {
  width: 50px !important;
  max-width: 100%; }

.w-60 {
  width: 60px !important;
  max-width: 100%; }

.w-70 {
  width: 70px !important;
  max-width: 100%; }

.w-80 {
  width: 80px !important;
  max-width: 100%; }

.w-90 {
  width: 90px !important;
  max-width: 100%; }

.w-100 {
  width: 100px !important;
  max-width: 100%; }

.w-110 {
  width: 110px !important;
  max-width: 100%; }

.w-120 {
  width: 120px !important;
  max-width: 100%; }

.w-130 {
  width: 130px !important;
  max-width: 100%; }

.w-150 {
  width: 150px !important;
  max-width: 100%; }

.w-180 {
  width: 180px !important;
  max-width: 100%; }

.w-200 {
  width: 200px !important;
  max-width: 100%; }

.w-220 {
  width: 220px !important;
  max-width: 100%; }

.w-250 {
  width: 250px !important;
  max-width: 100%; }

.w-300 {
  width: 300px !important;
  max-width: 100%; }

.w-350 {
  width: 350px !important;
  max-width: 100%; }

.w-400 {
  width: 400px !important;
  max-width: 100%; }

.v-hidden {
  display: none; }

.a-l {
  text-align: left !important; }

.a-c {
  text-align: center !important; }

.a-r {
  text-align: right !important; }

.white {
  color: #ffffff; }

.red {
  color: #ff0000; }

.green {
  color: #05a700; }

.blue {
  color: #0063ed; }

.bc-green {
  background-color: #41893f; }

.bc-blue {
  background-color: #0a4ba5; }

.inactive input[type="text"], .inactive select, .inactive textarea {
  background: #f5f5f5 !important;
  pointer-events: none; }
.inactive .tag, .inactive .comment, .inactive .warn {
  color: #ababab !important; }
.inactive .btn {
  background-color: #d5d5d5 !important;
  pointer-events: none; }

.clickable {
  cursor: pointer; }
  .clickable:hover {
    opacity: 0.8; }

.input-alert {
  color: #ff0000;
  position: absolute;
  right: 0;
  top: -10px;
  color: #ffffff;
  background-color: #ff0000;
  padding: 1px 5px; }

@media screen and (min-width: 769px) {
  .no-pc {
    display: none !important; } }

@media screen and (max-width: 768px) {
  .no-sp {
    display: none !important; } }

.margin-20 {
  width: 100%;
  margin-top: 20px; }

.margin-30 {
  width: 100%;
  margin-top: 30px; }

.margin-50 {
  width: 100%;
  margin-top: 50px; }

.margin-80 {
  width: 100%;
  margin-top: 80px; }

.margin-100 {
  width: 100%;
  margin-top: 100px; }

.no-padding {
  padding: unset !important; }

.no-margin {
  margin: unset !important; }

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ ヘッダ・フッダ（UI、管理画面）
---------------------------------------------------------------------------------------------------
#global-header                      //SP用
    .header-inner {                 //PC用
        .header-navutility {        //共通
            .header-logo {
            }
            .item-pc-search {
            }
            .navutility {
                .menu {}
                .favorite {}
                ...
            }
        }
        .header-navglobal-cover {
            .header-navglobal {
                .list {
                    .item-pc {

                    }
                    .item-sp {}
                }
            }
        }

        //利用は[item-sp]中
        .header-megamenu-container {
            .header-megamenu-inner {
            }
        }
    }
}
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#global-header {
  position: relative;
  z-index: 3; }
  #global-header:after {
    content: '';
    display: block;
    position: fixed;
    z-index: 1;
    background-color: rgba(0, 0, 0, 0.8);
    width: 100%;
    height: 100%;
    left: 100%;
    /* header-navglobal より 0.1s 遅くする */ }
    @media screen and (max-width: 768px) {
      #global-header:after {
        -webkit-transition: all .6s ease;
        -moz-transition: all .6s ease;
        transition: all .6s ease; } }
  @media screen and (max-width: 768px) {
    #global-header {
      display: block;
      width: 100%;
      height: 55px; }
      #global-header.active:after {
        left: 0; }
      #global-header.active .header-inner .header-navutility .navutility .menu .icon .b1 {
        animation: active-menu-bar01 0.65s forwards; }
      #global-header.active .header-inner .header-navutility .navutility .menu .icon .b2 {
        animation: active-menu-bar02 0.65s forwards; }
      #global-header.active .header-inner .header-navutility .navutility .menu .icon .b3 {
        animation: active-menu-bar03 0.65s forwards; }
      #global-header.active .header-inner .header-navutility .navutility .menu .close {
        display: block !important; }
      #global-header.active .header-inner .header-navutility .navutility .menu .open {
        display: none !important; }
      #global-header.active .header-inner .header-navglobal-cover .header-navglobal {
        pointer-events: all;
        opacity: 1;
        width: 90%;
        height: 100%;
        max-width: 500px; } }
  @media screen and (min-width: 769px) {
    #global-header {
      z-index: 200;
      width: 100%; }
      #global-header.fixed .header-inner {
        position: fixed;
        width: 100%;
        left: 0;
        top: 0; }
        #global-header.fixed .header-inner .header-navglobal-cover {
          pointer-events: auto;
          height: 50px;
          opacity: 1; }
        #global-header.fixed .header-inner:hover .header-navglobal-cover {
          pointer-events: auto;
          height: 50px;
          opacity: 1;
          transition: all .5s ease-in !important; }
      #global-header.fixed .hide-navglobal-cover {
        -webkit-box-shadow: 0 0 7px rgba(0, 0, 0, 0.2);
        box-shadow: 0 0 7px rgba(0, 0, 0, 0.2); }
        #global-header.fixed .hide-navglobal-cover .header-navglobal-cover {
          pointer-events: none;
          height: 0;
          opacity: 0;
          transition: all .5s ease-out !important; } }
  @media screen and (max-width: 768px) {
    #global-header .header-inner > * {
      position: relative;
      z-index: 2; } }
  @media screen and (min-width: 769px) {
    #global-header .header-inner {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-direction: column;
      flex-wrap: wrap;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      padding: 20px 30px 0;
      background-color: #ffffff;
      -webkit-box-shadow: 0px 1px 1px #5353532b;
      box-shadow: 0px 1px 1px #5353532b; } }
  @media screen and (max-width: 768px) {
    #global-header .header-inner .header-navutility {
      position: fixed;
      display: flex;
      justify-content: space-between;
      align-items: center;
      /*overflow: hidden;*/
      top: 0;
      left: 0;
      z-index: 20;
      width: 100%;
      height: 55px;
      background-color: #ffffff;
      border-bottom: 1px solid #e4e4e4; } }
  @media screen and (min-width: 769px) {
    #global-header .header-inner .header-navutility {
      height: 45px;
      width: 100%;
      max-width: 1280px;
      display: flex;
      justify-content: space-between;
      align-items: center; } }
  @media screen and (max-width: 768px) {
    #global-header .header-inner .header-navutility .header-logo {
      /*text-align: center;*/
      /*max-width: calc(100% - 240px);*/
      height: 70%;
      display: flex;
      align-items: center;
      align-content: center;
      flex-direction: row;
      justify-content: flex-start;
      flex-wrap: nowrap;
      overflow: hidden; } }
  @media screen and (min-width: 769px) {
    #global-header .header-inner .header-navutility .header-logo {
      display: flex;
      align-items: center;
      height: 80%; }
      #global-header .header-inner .header-navutility .header-logo a {
        display: inline-block;
        height: 100%; }
        #global-header .header-inner .header-navutility .header-logo a:hover {
          opacity: .7; }
        #global-header .header-inner .header-navutility .header-logo a picture {
          display: flex;
          align-items: center;
          height: 100%; }
          #global-header .header-inner .header-navutility .header-logo a picture img {
            height: 100%;
            width: auto; } }
  #global-header .header-inner .header-navutility .header-logo a {
    height: 100%; }
    @media screen and (max-width: 768px) {
      #global-header .header-inner .header-navutility .header-logo a img {
        /*margin: 10px 10px 10px 15px;*/
        width: auto;
        height: 100%;
        object-fit: contain;
        padding: 0 10px; } }
  @media screen and (max-width: 768px) {
    #global-header .header-inner .header-navutility .item-pc-search {
      display: none; } }
  @media screen and (min-width: 769px) {
    #global-header .header-inner .header-navutility .item-pc-search {
      position: relative;
      display: flex;
      align-items: center;
      width: 100%;
      max-width: 600px;
      padding: 0 10px 0 20px; }
      #global-header .header-inner .header-navutility .item-pc-search form {
        display: contents;
        position: relative; }
      #global-header .header-inner .header-navutility .item-pc-search .search-box {
        width: 100%; }
        #global-header .header-inner .header-navutility .item-pc-search .search-box input {
          font-family: "メイリオ","ＭＳ Ｐゴシック","ヒラギノ角ゴ Pro W3","Osaka",Arial,sans-serif;
          width: 100%;
          height: 34px;
          border: 1px solid #e8e8e8;
          border-radius: 5px;
          background-color: #fbfbfb;
          font-size: 18px;
          padding: 0 12px; }
          #global-header .header-inner .header-navutility .item-pc-search .search-box input:focus {
            border-color: #545454;
            box-shadow: 0 0 0 1px #545454; }
        #global-header .header-inner .header-navutility .item-pc-search .search-box input::placeholder {
          font-size: 14px;
          color: #cccccc; }
      #global-header .header-inner .header-navutility .item-pc-search .search-btn {
        margin-left: 5px;
        padding: 5px 20px;
        background-color: #353535;
        color: #ffffff;
        border-radius: 7px;
        width: 80px;
        text-align: center;
        cursor: pointer;
        white-space: nowrap; }
        #global-header .header-inner .header-navutility .item-pc-search .search-btn:hover {
          opacity: 0.7; }
        #global-header .header-inner .header-navutility .item-pc-search .search-btn:active {
          margin: 1px -1px -1px 6px; } }
  @media screen and (max-width: 768px) {
    #global-header .header-inner .header-navutility .navutility {
      display: flex;
      align-items: center;
      flex-direction: row-reverse;
      flex-wrap: nowrap; }
      #global-header .header-inner .header-navutility .navutility .cart,
      #global-header .header-inner .header-navutility .navutility .member,
      #global-header .header-inner .header-navutility .navutility .login {
        height: 55px;
        width: 60px; }
        #global-header .header-inner .header-navutility .navutility .cart a,
        #global-header .header-inner .header-navutility .navutility .member a,
        #global-header .header-inner .header-navutility .navutility .login a {
          padding: 9px 0;
          height: 100%;
          text-align: center;
          font-weight: bold;
          color: #ffffff; }
          #global-header .header-inner .header-navutility .navutility .cart a .icon,
          #global-header .header-inner .header-navutility .navutility .member a .icon,
          #global-header .header-inner .header-navutility .navutility .login a .icon {
            margin: 0 5px;
            font-size: 25px; }
          #global-header .header-inner .header-navutility .navutility .cart a .text,
          #global-header .header-inner .header-navutility .navutility .member a .text,
          #global-header .header-inner .header-navutility .navutility .login a .text {
            text-align: left;
            line-height: 1px; }
            #global-header .header-inner .header-navutility .navutility .cart a .text > span,
            #global-header .header-inner .header-navutility .navutility .member a .text > span,
            #global-header .header-inner .header-navutility .navutility .login a .text > span {
              display: block; }
            #global-header .header-inner .header-navutility .navutility .cart a .text .l,
            #global-header .header-inner .header-navutility .navutility .member a .text .l,
            #global-header .header-inner .header-navutility .navutility .login a .text .l {
              display: block;
              font-size: 11px;
              text-align: center; }
            #global-header .header-inner .header-navutility .navutility .cart a .text .s,
            #global-header .header-inner .header-navutility .navutility .member a .text .s,
            #global-header .header-inner .header-navutility .navutility .login a .text .s {
              font-size: 9px;
              line-height: 1.2;
              display: none; } }
          @media screen and (max-width: 768px) and (min-width: 481px) {
            #global-header .header-inner .header-navutility .navutility .cart a .text .s,
            #global-header .header-inner .header-navutility .navutility .member a .text .s,
            #global-header .header-inner .header-navutility .navutility .login a .text .s {
              display: block; }
              #global-header .header-inner .header-navutility .navutility .cart a .text .s br,
              #global-header .header-inner .header-navutility .navutility .member a .text .s br,
              #global-header .header-inner .header-navutility .navutility .login a .text .s br {
                display: none; } }
  @media screen and (max-width: 768px) {
      #global-header .header-inner .header-navutility .navutility .cart {
        display: inline-block;
        /*position: absolute;
        right: 60px;*/ }
        #global-header .header-inner .header-navutility .navutility .cart a {
          background-color: #78a208; }
        #global-header .header-inner .header-navutility .navutility .cart .cartin-mark p {
          display: inline-block;
          position: absolute;
          top: 7px;
          right: 7px;
          background-color: #fb1f6a;
          color: #ffffff;
          font-size: 14px;
          font-weight: normal;
          border-radius: 10px;
          height: 20px;
          max-width: 30px;
          min-width: 20px;
          z-index: 1; }
        #global-header .header-inner .header-navutility .navutility .cart .cartin-mark .disabled {
          display: none; }
      #global-header .header-inner .header-navutility .navutility .login {
        /*position: absolute;
        right: 120px;*/ }
        #global-header .header-inner .header-navutility .navutility .login a {
          background-color: #ff6666; }
      #global-header .header-inner .header-navutility .navutility .member {
        /*position: absolute;
        right: 180px;*/ }
        #global-header .header-inner .header-navutility .navutility .member a {
          background-color: #ffa000; }
      #global-header .header-inner .header-navutility .navutility .menu {
        background-color: #454044;
        pointer-events: all;
        cursor: pointer;
        display: inline-block;
        width: 60px;
        height: 55px;
        text-align: center;
        /*position: absolute;
        right: 0;*/
        /*
        -webkit-transition: all 0.45s;
        -moz-transition: all 0.45s;
        transition: all 0.45s;
        */ }
        #global-header .header-inner .header-navutility .navutility .menu .icon {
          width: 100%;
          padding: 13px 18px 11px 18px; }
          #global-header .header-inner .header-navutility .navutility .menu .icon > div {
            height: 2px;
            background-color: #ffffff; }
            #global-header .header-inner .header-navutility .navutility .menu .icon > div:nth-child(n+2) {
              margin-top: 5px; }
          #global-header .header-inner .header-navutility .navutility .menu .icon .b1 {
            animation: menu-bar01 0.65s forwards; }
          #global-header .header-inner .header-navutility .navutility .menu .icon .b3 {
            animation: menu-bar02 0.65s forwards; }
        #global-header .header-inner .header-navutility .navutility .menu .close {
          display: none; }
        #global-header .header-inner .header-navutility .navutility .menu .text {
          color: #ffffff;
          font-size: 11px;
          line-height: 1px;
          font-weight: bold; }
      #global-header .header-inner .header-navutility .navutility .favorite {
        display: none; } }
  @media screen and (min-width: 769px) {
    #global-header .header-inner .header-navutility .navutility {
      display: flex;
      margin-left: 20px; }
      #global-header .header-inner .header-navutility .navutility .favorite,
      #global-header .header-inner .header-navutility .navutility .cart,
      #global-header .header-inner .header-navutility .navutility .member,
      #global-header .header-inner .header-navutility .navutility .login {
        /*width: 130px;*/
        width: 70px;
        float: right;
        margin-left: 10px; }
        #global-header .header-inner .header-navutility .navutility .favorite a,
        #global-header .header-inner .header-navutility .navutility .cart a,
        #global-header .header-inner .header-navutility .navutility .member a,
        #global-header .header-inner .header-navutility .navutility .login a {
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          flex-direction: column;
          -webkit-box-align: center;
          -webkit-align-items: center;
          -ms-flex-align: center;
          align-items: center;
          -webkit-box-pack: center;
          -webkit-justify-content: center;
          -ms-flex-pack: center;
          justify-content: center;
          border-radius: 4px;
          height: 45px;
          text-align: center;
          font-size: 14px;
          font-weight: bold;
          /*color: #ffffff;*/
          color: #777777; }
          #global-header .header-inner .header-navutility .navutility .favorite a:hover,
          #global-header .header-inner .header-navutility .navutility .cart a:hover,
          #global-header .header-inner .header-navutility .navutility .member a:hover,
          #global-header .header-inner .header-navutility .navutility .login a:hover {
            opacity: .6; }
          #global-header .header-inner .header-navutility .navutility .favorite a .icon,
          #global-header .header-inner .header-navutility .navutility .cart a .icon,
          #global-header .header-inner .header-navutility .navutility .member a .icon,
          #global-header .header-inner .header-navutility .navutility .login a .icon {
            margin-right: .1em;
            /*font-size: 24px;*/
            font-size: 30px; }
          #global-header .header-inner .header-navutility .navutility .favorite a .text,
          #global-header .header-inner .header-navutility .navutility .cart a .text,
          #global-header .header-inner .header-navutility .navutility .member a .text,
          #global-header .header-inner .header-navutility .navutility .login a .text {
            padding: .18rem 0;
            text-align: left; }
            #global-header .header-inner .header-navutility .navutility .favorite a .text .l,
            #global-header .header-inner .header-navutility .navutility .cart a .text .l,
            #global-header .header-inner .header-navutility .navutility .member a .text .l,
            #global-header .header-inner .header-navutility .navutility .login a .text .l {
              display: block;
              /*font-size: 14px;*/
              font-size: 12px;
              font-weight: normal; }
            #global-header .header-inner .header-navutility .navutility .favorite a .text .s,
            #global-header .header-inner .header-navutility .navutility .cart a .text .s,
            #global-header .header-inner .header-navutility .navutility .member a .text .s,
            #global-header .header-inner .header-navutility .navutility .login a .text .s {
              display: none; }
      #global-header .header-inner .header-navutility .navutility .favorite {
        position: relative; }
        #global-header .header-inner .header-navutility .navutility .favorite a {
          color: #73521e;
          background-color: #fffcec;
          border: 1px solid #d7c9b2; }
        #global-header .header-inner .header-navutility .navutility .favorite .favorite-mark p {
          position: absolute;
          background-color: #eba403;
          color: #ffffff;
          font-size: 14px;
          font-weight: normal;
          border-radius: 10px;
          height: 20px;
          max-width: 30px;
          min-width: 20px;
          left: -3px;
          top: -3px; }
        #global-header .header-inner .header-navutility .navutility .favorite .favorite-mark .disabled {
          display: none; }
      #global-header .header-inner .header-navutility .navutility .cart {
        position: relative; }
        #global-header .header-inner .header-navutility .navutility .cart a {
          background-color: #78a208; }
        #global-header .header-inner .header-navutility .navutility .cart .cartin-mark p {
          position: absolute;
          background-color: #fb1f6a;
          color: #ffffff;
          font-size: 14px;
          font-weight: normal;
          border-radius: 10px;
          height: 20px;
          max-width: 30px;
          min-width: 20px;
          left: -3px;
          top: -3px; }
        #global-header .header-inner .header-navutility .navutility .cart .cartin-mark .disabled {
          display: none; }
      #global-header .header-inner .header-navutility .navutility .member a {
        /*background-color: #ffa000;*/ }
      #global-header .header-inner .header-navutility .navutility .login a {
        /*background-color: #ff6666;*/ }
      #global-header .header-inner .header-navutility .navutility .menu {
        display: none; } }
  @media screen and (min-width: 769px) {
    #global-header .header-inner .header-navglobal-cover {
      display: block;
      background: #ffffff;
      padding-top: 10px;
      width: 100%;
      height: 50px;
      margin: 0 auto;
      transition: all 0.2s;
      max-width: 1280px;
      overflow: hidden; } }
  @media screen and (max-width: 768px) {
    #global-header .header-inner .header-navglobal-cover .header-navglobal {
      position: fixed;
      top: 55px;
      right: 0;
      height: 100%;
      overflow-y: scroll;
      pointer-events: none;
      opacity: 1;
      width: 0;
      background-color: #ffffff;
      /* アニメ適用 */
      -webkit-transition: all .5s ease;
      -moz-transition: all .5s ease;
      transition: all .5s ease; }
      #global-header .header-inner .header-navglobal-cover .header-navglobal .infos {
        width: 100%;
        display: flex;
        justify-content: space-evenly;
        align-items: center;
        background-color: #ffffff;
        margin-top: 20px; }
        #global-header .header-inner .header-navglobal-cover .header-navglobal .infos .member {
          display: flex;
          flex-direction: column;
          align-items: center; }
          #global-header .header-inner .header-navglobal-cover .header-navglobal .infos .member img {
            width: 80px;
            height: 80px;
            object-fit: cover;
            border-radius: 50%;
            cursor: pointer; }
          #global-header .header-inner .header-navglobal-cover .header-navglobal .infos .member .name {
            font-size: 14px; }
        #global-header .header-inner .header-navglobal-cover .header-navglobal .infos .profile {
          display: flex;
          flex-direction: column;
          align-items: flex-start;
          /*margin-left: 20px;*/ }
          #global-header .header-inner .header-navglobal-cover .header-navglobal .infos .profile .one-line {
            font-size: 14px;
            line-height: 14px; }
      #global-header .header-inner .header-navglobal-cover .header-navglobal .list {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        justify-content: flex-end;
        align-content: flex-start;
        background-color: #ffffff;
        padding-bottom: 100px;
        min-height: 100%; }
        #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item {
          width: 100%;
          border-bottom: 1px solid #e8e8e8;
          background-color: #ffffff; }
          #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item > a {
            position: relative;
            padding: 1em 0 1em 7.5%;
            font-size: 14px; } }
        @media screen and (max-width: 768px) and (max-width: 335px) {
          #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item > a {
            font-size: 12px; } }
  @media screen and (max-width: 768px) {
            #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item > a:after {
              content: '';
              display: block;
              position: absolute;
              top: 50%;
              right: 7.5%;
              border-top: 1px solid #000;
              border-right: 1px solid #000;
              width: .4em;
              height: .4em;
              -webkit-transform: translate(0, -50%) rotate(45deg);
              -ms-transform: translate(0, -50%) rotate(45deg);
              transform: translate(0, -50%) rotate(45deg); }
        #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp {
          width: 100%;
          background-color: #ffffff;
          border-bottom: 1px solid #e8e8e8; }
          #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp > a {
            display: flex;
            align-items: center;
            position: relative;
            padding: 1em 0 1em 18px;
            font-size: 14px;
            white-space: nowrap; } }
        @media screen and (max-width: 768px) and (max-width: 335px) {
          #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp > a {
            font-size: 12px; } }
  @media screen and (max-width: 768px) {
            #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp > a .ico {
              font-size: 22px;
              color: #525252;
              padding-right: 4px; }
          #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp ul {
            margin: 0;
            display: none; }
          #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp.opener {
            -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
            position: relative; }
            #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp.opener:before {
              font-family: 'Font Awesome 5 Free';
              font-weight: 900;
              -moz-transition: color 0.2s ease-in-out, -moz-transform 0.2s ease-in-out;
              -webkit-transition: color 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
              -ms-transition: color 0.2s ease-in-out, -ms-transform 0.2s ease-in-out;
              transition: color 0.2s ease-in-out, transform 0.2s ease-in-out;
              color: #9fa3a6;
              content: '\f078';
              position: absolute;
              right: 15px;
              top: 17px;
              font-variant: normal;
              text-rendering: auto;
              line-height: 1;
              text-transform: none !important;
              box-sizing: inherit; }
          #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp.active:before {
            -moz-transform: rotate(-180deg);
            -webkit-transform: rotate(-180deg);
            -ms-transform: rotate(-180deg);
            transform: rotate(-180deg); }
          #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp form {
            display: flex;
            flex-wrap: wrap;
            padding: 1em 1em 1em 7.5%;
            position: relative; }
            #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp form .search-box {
              width: auto;
              display: flex; }
              #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp form .search-box input {
                font-family: "メイリオ","ＭＳ Ｐゴシック","ヒラギノ角ゴ Pro W3","Osaka",Arial,sans-serif;
                width: 100%;
                height: 34px;
                border: 1px solid #e8e8e8;
                background-color: #fbfbfb;
                font-size: 18px;
                padding: 0 12px; }
              #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp form .search-box input::placeholder {
                font-size: 14px;
                color: #cccccc; }
              #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp form .search-box .search-btn {
                margin-left: 5px;
                padding: 5px 20px;
                background-color: #353535;
                color: #ffffff;
                border-radius: 7px;
                width: 80px;
                text-align: center;
                cursor: pointer;
                white-space: nowrap; }
        #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp-sub {
          width: 100%;
          background-color: #f3f3f3;
          border-bottom: 1px solid #e8e8e8; }
          #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp-sub:last-child {
            border-bottom: unset; }
          #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp-sub > a {
            display: flex;
            align-items: center;
            position: relative;
            padding: 1em 0 1em 40px;
            font-size: 14px;
            color: #27628c;
            white-space: nowrap; } }
        @media screen and (max-width: 768px) and (max-width: 335px) {
          #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp-sub > a {
            font-size: 12px; } }
  @media screen and (max-width: 768px) {
            #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp-sub > a .ico {
              font-size: 22px;
              color: #27628c;
              padding-right: 4px; }
        #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp a:hover, #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp-sub a:hover {
          color: #119dc7;
          background-color: #8787870a; }
        #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp a.selected, #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp-sub a.selected {
          color: #ffffff;
          background-color: #717171; }
          #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp a.selected p, #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp-sub a.selected p {
            color: #ffffff; }
          #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp a.selected:hover, #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp-sub a.selected:hover {
            color: #ffff00; }
            #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp a.selected:hover p, #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp-sub a.selected:hover p {
              color: #ffff00; }
        #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-pc {
          display: none; } }
  @media screen and (min-width: 769px) {
    #global-header .header-inner .header-navglobal-cover .header-navglobal .infos {
      display: none; }
    #global-header .header-inner .header-navglobal-cover .header-navglobal .list {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: flex-start;
      -webkit-justify-content: flex-start;
      -ms-flex-pack: flex-start;
      justify-content: flex-start;
      align-items: center;
      margin: 0 auto;
      width: 100%; }
      #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item {
        position: relative;
        width: 14%; }
        #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item:before {
          content: '';
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          width: 1px;
          height: 100%;
          background: -webkit-gradient(linear, left top, left bottom, from(#f7f8f9), color-stop(50%, #cfd0d1), to(#f7f8f9));
          background: -webkit-linear-gradient(top, #f7f8f9, #cfd0d1 50%, #f7f8f9);
          background: -o-linear-gradient(top, #f7f8f9, #cfd0d1 50%, #f7f8f9);
          background: linear-gradient(to bottom, #f7f8f9, #cfd0d1 50%, #f7f8f9); }
        #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item > a {
          padding: 23px 0;
          text-align: center;
          font-size: 14px;
          line-height: 1;
          letter-spacing: -.05em;
          white-space: nowrap;
          -webkit-transition: color .25s ease;
          -o-transition: color .25s ease;
          transition: color .25s ease; }
          #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item > a:hover {
            color: #ffa000; }
      #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-pc {
        position: relative;
        width: 13%;
        min-width: 120px; }
        #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-pc:before {
          content: '';
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          width: 1px;
          height: 100%;
          background: -webkit-gradient(linear, left top, left bottom, from(#f7f8f9), color-stop(50%, #cfd0d1), to(#f7f8f9));
          background: -webkit-linear-gradient(top, #f7f8f9, #cfd0d1 50%, #f7f8f9);
          background: -o-linear-gradient(top, #f7f8f9, #cfd0d1 50%, #f7f8f9);
          background: linear-gradient(to bottom, #f7f8f9, #cfd0d1 50%, #f7f8f9); }
        #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-pc:after {
          content: '';
          position: absolute;
          opacity: 0;
          bottom: 0;
          left: 50%;
          -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
          transform: translateX(-50%);
          border-right: solid 8px transparent;
          border-bottom: solid 8px #6690a3;
          border-left: solid 8px transparent;
          -webkit-transition: opacity .2s ease;
          -o-transition: opacity .2s ease;
          transition: opacity .2s ease; }
        #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-pc > a {
          padding: 13px 5px;
          text-align: center;
          font-size: 14px;
          line-height: 1;
          letter-spacing: -.05em;
          white-space: nowrap;
          -webkit-transition: color .25s ease;
          -o-transition: color .25s ease;
          transition: color .25s ease;
          overflow: hidden;
          text-overflow: ellipsis; }
          #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-pc > a:hover {
            color: #ffa000; }
          #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-pc > a.selected {
            font-weight: bold;
            color: #6b6b6b; }
      #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp {
        display: none; }
      #global-header .header-inner .header-navglobal-cover .header-navglobal .list .item-sp-sub {
        display: none; }
      #global-header .header-inner .header-navglobal-cover .header-navglobal .list .is-active::after {
        opacity: 1; } }
  @media screen and (max-width: 768px) {
    #global-header .header-inner .header-navglobal-cover .header-navglobal::-webkit-scrollbar {
      display: none; } }
  #global-header .header-inner .header-megamenu-container {
    display: none; }
    @media screen and (min-width: 769px) {
      #global-header .header-inner .header-megamenu-container {
        display: block;
        -webkit-transition: opacity .2s ease;
        -o-transition: opacity .2s ease;
        transition: opacity .2s ease;
        position: fixed;
        left: 0;
        width: 100vw;
        visibility: hidden;
        opacity: 0;
        background-color: #6690a3; }
        #global-header .header-inner .header-megamenu-container .header-megamenu-inner {
          width: 100%;
          max-width: 1200px;
          margin-right: auto;
          margin-left: auto;
          padding-top: 25px;
          padding-bottom: 25px; }
        #global-header .header-inner .header-megamenu-container .header-megamenu-service {
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          -webkit-box-pack: justify;
          -webkit-justify-content: center;
          -ms-flex-pack: justify;
          justify-content: center;
          margin-left: -30px; }
          #global-header .header-inner .header-megamenu-container .header-megamenu-service > li {
            padding-left: 30px;
            width: 25%; }
            #global-header .header-inner .header-megamenu-container .header-megamenu-service > li a {
              display: flex;
              flex-wrap: nowrap;
              justify-content: center;
              align-items: center;
              height: 46px;
              line-height: 46px;
              border-radius: 23px;
              text-align: center;
              background-color: #ffffff;
              position: relative;
              -webkit-transition: color .2s ease;
              -o-transition: color .2s ease;
              transition: color .2s ease;
              padding-right: 8px; }
              #global-header .header-inner .header-megamenu-container .header-megamenu-service > li a .ico {
                color: #ffa000;
                padding-right: 10px;
                cursor: pointer; }
              #global-header .header-inner .header-megamenu-container .header-megamenu-service > li a .txt {
                line-height: 1px;
                cursor: pointer; }
              #global-header .header-inner .header-megamenu-container .header-megamenu-service > li a:hover {
                color: #ff9800; }
              #global-header .header-inner .header-megamenu-container .header-megamenu-service > li a::before {
                content: '';
                display: block;
                position: absolute;
                right: 15px;
                top: 50%;
                -webkit-transform: translateY(-50%) rotate(45deg);
                -ms-transform: translateY(-50%) rotate(45deg);
                transform: translateY(-50%) rotate(45deg);
                width: 6px;
                height: 6px;
                border-top: solid 1px #ff9800;
                border-right: solid 1px #ff9800; }
              #global-header .header-inner .header-megamenu-container .header-megamenu-service > li a img {
                margin-right: 10px;
                vertical-align: middle;
                margin-bottom: 2px;
                width: 25px; }
        #global-header .header-inner .header-megamenu-container .header-megamenu-item {
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          -webkit-box-pack: justify;
          -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
          justify-content: space-between;
          margin-left: -20px; }
          #global-header .header-inner .header-megamenu-container .header-megamenu-item__col {
            padding-left: 20px;
            width: 25%; }
          #global-header .header-inner .header-megamenu-container .header-megamenu-item__group {
            position: relative;
            overflow: hidden; }
            #global-header .header-inner .header-megamenu-container .header-megamenu-item__group a {
              position: absolute;
              display: block;
              top: 0;
              left: 0;
              width: 100%;
              height: 100%;
              z-index: 3;
              color: #ffffff;
              font-weight: bold;
              font-size: 20px;
              text-align: center; }
              #global-header .header-inner .header-megamenu-container .header-megamenu-item__group a > span {
                position: absolute;
                top: 50%;
                left: 50%;
                -webkit-transform: translate(-50%, -50%);
                -ms-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%); }
            #global-header .header-inner .header-megamenu-container .header-megamenu-item__group::before {
              content: '';
              position: absolute;
              z-index: 2;
              top: 0;
              left: 0;
              width: 100%;
              height: 100%;
              -webkit-transition: background-color .2s ease;
              -o-transition: background-color .2s ease;
              transition: background-color .2s ease;
              background-color: rgba(0, 0, 0, 0.3); }
            #global-header .header-inner .header-megamenu-container .header-megamenu-item__group::after {
              content: '';
              position: absolute;
              z-index: 2;
              top: 50%;
              right: 15px;
              -webkit-transform: translateY(-50%) rotate(45deg);
              -ms-transform: translateY(-50%) rotate(45deg);
              transform: translateY(-50%) rotate(45deg);
              width: 15px;
              height: 15px;
              border-top: 2px solid #ffffff;
              border-right: 2px solid #ffffff; }
            #global-header .header-inner .header-megamenu-container .header-megamenu-item__group:hover::before {
              background-color: rgba(0, 0, 0, 0.2); }
          #global-header .header-inner .header-megamenu-container .header-megamenu-item__item {
            min-height: 200px; }
            #global-header .header-inner .header-megamenu-container .header-megamenu-item__item > ul {
              margin-top: 8px;
              display: -webkit-box;
              display: -webkit-flex;
              display: -ms-flexbox;
              display: flex;
              -webkit-flex-wrap: wrap;
              -ms-flex-wrap: wrap;
              flex-wrap: wrap;
              -webkit-box-pack: justify;
              -webkit-justify-content: space-between;
              -ms-flex-pack: justify;
              justify-content: space-between;
              margin-left: -15px;
              color: #ffffff; }
              #global-header .header-inner .header-megamenu-container .header-megamenu-item__item > ul > li {
                width: 50%;
                padding-left: 15px;
                padding-bottom: 3px; }
                #global-header .header-inner .header-megamenu-container .header-megamenu-item__item > ul > li a {
                  color: #ffffff;
                  font-size: 14px;
                  line-height: 1.4;
                  padding-left: 15px;
                  position: relative; }
                  #global-header .header-inner .header-megamenu-container .header-megamenu-item__item > ul > li a .material-icons {
                    position: absolute;
                    top: 2px;
                    left: 0;
                    vertical-align: middle;
                    font-size: 14px; }
                  #global-header .header-inner .header-megamenu-container .header-megamenu-item__item > ul > li a:hover {
                    text-decoration: underline; }
        #global-header .header-inner .header-megamenu-container .header-megamenu-brand {
          color: #ffffff;
          display: -webkit-box;
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          -webkit-box-pack: start;
          -webkit-justify-content: flex-start;
          -ms-flex-pack: start;
          justify-content: flex-start;
          margin: 0; }
          #global-header .header-inner .header-megamenu-container .header-megamenu-brand dt {
            font-size: 16px;
            font-weight: bold;
            width: 100%;
            margin-bottom: 5px;
            padding-left: 15px; }
          #global-header .header-inner .header-megamenu-container .header-megamenu-brand dd {
            width: 25%;
            padding: 3px 0 5px 15px; }
            #global-header .header-inner .header-megamenu-container .header-megamenu-brand dd a {
              color: #ffffff;
              font-size: 14px; }
              #global-header .header-inner .header-megamenu-container .header-megamenu-brand dd a .material-icons {
                vertical-align: middle;
                margin-right: 5px;
                margin-bottom: 2px;
                font-size: 14px; }
              #global-header .header-inner .header-megamenu-container .header-megamenu-brand dd a:hover {
                text-decoration: underline; } }
  #global-header .header-inner .is-active > a + .header-megamenu-container {
    visibility: visible;
    opacity: 1; }
  #global-header .header-logo {
    float: left; }

#global-footer {
  position: relative;
  width: 100%;
  color: #ffffff;
  background-color: #4b4b4b;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  flex-direction: column;
  margin: 0 auto;
  top: 115px;
  border-top: 1px solid #e1e1e1; }
  @media screen and (max-width: 768px) {
    #global-footer {
      color: #ffffff;
      background-color: #4b4b4b;
      top: 0; } }
  #global-footer .footer-contents {
    width: 100%;
    max-width: 1280px;
    display: flex;
    flex-wrap: wrap;
    padding: 30px 10px 0; }
    @media screen and (max-width: 768px) {
      #global-footer .footer-contents {
        margin-bottom: 20px; } }
    #global-footer .footer-contents .logo {
      width: 15%;
      text-align: center; }
      #global-footer .footer-contents .logo img {
        width: 100%;
        object-fit: contain;
        max-width: 150px; }
    #global-footer .footer-contents .information {
      width: 45%;
      display: flex;
      flex-direction: column;
      padding: 0 10px; }
      @media screen and (max-width: 768px) {
        #global-footer .footer-contents .information {
          width: 85%; } }
      #global-footer .footer-contents .information .main {
        font-size: 20px;
        line-height: 20px;
        font-weight: bold; }
      #global-footer .footer-contents .information .sub {
        font-size: 12px; }
      #global-footer .footer-contents .information .contents {
        font-size: 12px;
        line-height: 17px;
        margin-top: 10px; }
    #global-footer .footer-contents .menu-summary {
      width: 40%;
      display: flex;
      justify-content: space-around;
      padding: 0 10px; }
      @media screen and (max-width: 768px) {
        #global-footer .footer-contents .menu-summary {
          display: none; } }
      #global-footer .footer-contents .menu-summary .one-block {
        display: flex;
        flex-direction: column; }
        #global-footer .footer-contents .menu-summary .one-block .title {
          font-size: 14px;
          font-weight: bold;
          margin-bottom: 4px; }
        #global-footer .footer-contents .menu-summary .one-block .item {
          font-size: 12px;
          line-height: 18px;
          cursor: pointer; }
          #global-footer .footer-contents .menu-summary .one-block .item:hover {
            color: #119dc7;
            text-decoration: underline; }
  #global-footer .site-base-menu {
    width: 100%;
    display: flex;
    justify-content: center;
    margin: 15px 0;
    padding: 0 10px; }
    @media screen and (max-width: 768px) {
      #global-footer .site-base-menu {
        display: none; } }
    #global-footer .site-base-menu .base-meun {
      margin: 0 20px;
      font-size: 12px;
      cursor: pointer; }
      #global-footer .site-base-menu .base-meun:hover {
        color: #119dc7;
        text-decoration: underline; }
  #global-footer .copyright {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    line-height: 12px;
    height: 40px;
    padding: 0 10px;
    color: #ffffff;
    background-color: #373737; }
    @media screen and (max-width: 768px) {
      #global-footer .copyright {
        color: #ffffff;
        background-color: #373737; } }
    @media screen and (max-width: 480px) {
      #global-footer .copyright span {
        display: none; } }
    @media screen and (max-width: 360px) {
      #global-footer .copyright {
        font-size: 10px; } }

/* Wrapper */
#wrapper {
  width: 100%;
  position: relative;
  top: 115px; }
  #wrapper .wait {
    background-image: url("images/loading.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100%;
    object-fit: contain;
    width: 60px;
    height: 60px;
    position: fixed;
    left: calc(50% - 30px);
    top: calc(50% - 30px);
    display: none;
    z-index: 2001; }
  @media screen and (max-width: 768px) {
    #wrapper {
      top: 0; } }

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ 管理画面用
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* global-header-mng */
#global-header-mng {
  width: 100%;
  height: 30px;
  color: #ffffff;
  background-color: #333333e3;
  position: fixed;
  top: 0;
  display: flex;
  align-items: center;
  padding: 0 10px;
  font-size: 16px;
  white-space: nowrap; }

#global-footer-mng {
  position: relative;
  width: 100%;
  height: 30px;
  color: #ffffff;
  background-color: #6c6c6c;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  padding: 10px 0;
  /*margin-top: 40px;*/
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis; }
  #global-footer-mng .copyright {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    line-height: 12px; }
    @media screen and (max-width: 480px) {
      #global-footer-mng .copyright span {
        display: none; } }
    @media screen and (max-width: 360px) {
      #global-footer-mng .copyright {
        font-size: 10px; } }

/* Wrapper-mng */
#wrapper-mng {
  display: -moz-flex;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  /*@include vendor('flex-direction', 'row-reverse');*/
  -moz-flex-direction: row;
  -webkit-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
  min-height: 100vh;
  margin-top: 30px; }
  #wrapper-mng .wait {
    background-image: url("images/loading.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100%;
    object-fit: contain;
    width: 60px;
    height: 60px;
    position: absolute;
    left: calc(50% - 30px);
    top: calc(50% - 30px);
    display: none;
    z-index: 1; }

/* Header */
#header {
  display: -moz-flex;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  border-bottom: solid 5px #119dc7;
  position: relative;
  padding: 32px 0 0 0; }
  @media screen and (max-width: 1680px) {
    #header {
      padding: 22px 0 0 50px; } }
  @media screen and (max-width: 1280px) {
    #header {
      padding: 20px 0 0 25px; } }
  @media screen and (max-width: 980px) {
    #header {
      padding: 20px 0 0 50px; } }
  @media screen and (max-width: 768px) {
    #header {
      padding: 18px 0 0 90px; } }
  @media screen and (max-width: 480px) {
    #header {
      padding: 18px 0 0 80px; } }
  @media screen and (max-width: 360px) {
    #header {
      padding: 16px 0 0 70px; } }
  #header > * {
    -moz-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-bottom: 0; }
  #header .title {
    border-bottom: 0;
    color: #666666;
    font-family: "メイリオ", "ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", "Osaka", Arial, sans-serif;
    font-size: 2em;
    font-weight: bold; }
    @media screen and (max-width: 768px) {
      #header .title {
        font-size: 1.75em;
        margin: 0; } }
  #header .top-searcher {
    display: flex;
    justify-content: flex-end;
    padding: 7px 0 0 0; }
    @media screen and (max-width: 768px) {
      #header .top-searcher {
        padding: 3px 0 0 0; } }
    #header .top-searcher input[type='text'] {
      height: 2.1em;
      margin-right: 5px;
      max-width: 350px; }
  #header .icons {
    text-align: right; }
    @media screen and (max-width: 768px) {
      #header .icons {
        height: 5em;
        line-height: 5em;
        position: absolute;
        right: 0;
        top: 0; } }

/* Footer */
#footer .copyright {
  color: #9fa3a6;
  font-size: 0.9em; }
  #footer .copyright a {
    color: inherit; }

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ サイドバー（Sidebar、管理画面用）
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#search form {
  text-decoration: none;
  position: relative; }
  #search form:before {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    text-transform: none !important;
    font-family: 'Font Awesome 5 Free';
    font-weight: 900; }
  #search form:before {
    -moz-transform: scaleX(-1);
    -webkit-transform: scaleX(-1);
    -ms-transform: scaleX(-1);
    transform: scaleX(-1);
    color: #676e74;
    content: '\f002';
    cursor: default;
    display: block;
    font-size: 1.5em;
    height: 2em;
    line-height: 2em;
    opacity: 0.325;
    position: absolute;
    right: 0;
    text-align: center;
    top: 0;
    width: 2em; }
  #search form input[type="text"] {
    padding-right: 2.75em; }

#sidebar {
  -moz-flex-grow: 0;
  -webkit-flex-grow: 0;
  -ms-flex-grow: 0;
  flex-grow: 0;
  -moz-flex-shrink: 0;
  -webkit-flex-shrink: 0;
  -ms-flex-shrink: 0;
  flex-shrink: 0;
  -moz-transition: margin-left 0.5s ease, box-shadow 0.5s ease;
  -webkit-transition: margin-left 0.5s ease, box-shadow 0.5s ease;
  -ms-transition: margin-left 0.5s ease, box-shadow 0.5s ease;
  transition: margin-left 0.5s ease, box-shadow 0.5s ease;
  background-color: #f5f6f7;
  font-size: 0.9em;
  position: relative;
  width: 18em;
  height: 100%;
  left: 0;
  position: fixed; }
  #sidebar h2 {
    font-size: 1.3888888889em; }
  #sidebar > .inner {
    padding: 2.2222222222em 2.2222222222em 2.4444444444em 2.2222222222em ;
    position: relative;
    width: 18em;
    height: calc(100% - 30px);
    overflow-x: hidden;
    overflow-y: auto;
    top: 0;
        /*
        > * {
            border-bottom: solid 2px _palette(border);
            margin: 0 0 (_size(element-margin) * 1.75) 0;
            padding: 0 0 (_size(element-margin) * 1.75) 0;

            > :last-child {
                margin-bottom: 0;
            }

            &:last-child {
                border-bottom: 0;
                margin-bottom: 0;
                padding-bottom: 0;
            }
        }
        */ }
    #sidebar > .inner > .alt {
      background-color: #eff1f2;
      border-bottom: 0;
      margin: -2.2222222222em 0 4.4444444444em -2.2222222222em;
      padding: 2.2222222222em;
      width: calc(100% + 4.4444444444em); }
    #sidebar > .inner .logo {
      width: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
      margin-bottom: 10px;
      position: relative;
      cursor: pointer; }
      #sidebar > .inner .logo .ico1 {
        display: flex;
        width: 100px;
        height: 100px;
        align-items: center; }
        #sidebar > .inner .logo .ico1 img {
          width: 100%; }
      #sidebar > .inner .logo:hover .ico1 {
        opacity: 0.8; }
    #sidebar > .inner .user {
      width: 100%;
      margin-bottom: 20px;
      display: flex;
      flex-direction: column;
      align-items: center;
      background-color: #f3f3eb;
      border: 3px solid #ffffff;
      border-radius: 7px;
      box-shadow: 0 0 0px 1px #d3d3d3;
      padding: 8px; }
      #sidebar > .inner .user .tag {
        font-size: 10px;
        line-height: 10px;
        margin-top: 2px;
        color: #9f9f9f; }
      #sidebar > .inner .user .name {
        font-size: 18px;
        line-height: 18px;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
        width: 100%;
        text-align: center; }
        @media screen and (max-width: 980px) {
          #sidebar > .inner .user .name {
            font-size: 16px;
            line-height: 16px; } }
  #sidebar > .inner::-webkit-scrollbar {
    display: none;
    width: 2px; }
  #sidebar > .inner::-webkit-scrollbar-track {
    background-color: #ccc; }
  #sidebar > .inner::-webkit-scrollbar-thumb {
    background-color: #17585d; }
  #sidebar .toggle {
    text-decoration: none;
    -moz-transition: left 0.5s ease;
    -webkit-transition: left 0.5s ease;
    -ms-transition: left 0.5s ease;
    transition: left 0.5s ease;
    -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
    border: 0;
    display: block;
    height: 7.5em;
    left: 18em;
    line-height: 7.5em;
    outline: 0;
    overflow: hidden;
    position: absolute;
    text-align: center;
    text-indent: -15em;
    white-space: nowrap;
    top: 0;
    width: 6em;
    z-index: 1000; }
    #sidebar .toggle:before {
      -moz-osx-font-smoothing: grayscale;
      -webkit-font-smoothing: antialiased;
      display: inline-block;
      font-style: normal;
      font-variant: normal;
      text-rendering: auto;
      line-height: 1;
      text-transform: none !important;
      font-family: 'Font Awesome 5 Free';
      font-weight: 900; }
    #sidebar .toggle:before {
      content: '\f0c9';
      font-size: 2rem;
      height: inherit;
      left: 0;
      line-height: inherit;
      position: absolute;
      text-indent: 0;
      top: 0;
      width: inherit; }
  #sidebar.inactive {
    margin-left: -18em; }
  @media screen and (max-width: 1680px) {
    #sidebar {
      width: 18em; }
      #sidebar > .inner {
        padding: 1.6666666667em 1.6666666667em 1.3333333333em 1.6666666667em ;
        width: 18em; }
        #sidebar > .inner > .alt {
          margin: -1.6666666667em 0 3.3333333333em -1.6666666667em;
          padding: 1.6666666667em;
          width: calc(100% + 3.3333333333em); }
      #sidebar .toggle {
        height: 6.25em;
        left: 18em;
        line-height: 6.25em;
        text-indent: 5em;
        width: 5em; }
        #sidebar .toggle:before {
          font-size: 1.5rem; }
      #sidebar.inactive {
        margin-left: -18em; } }
  @media screen and (max-width: 1280px) {
    #sidebar {
      box-shadow: 0 0 5em 0 rgba(0, 0, 0, 0.175);
      height: 100%;
      left: 0;
      position: fixed;
      top: 0;
      z-index: 1000;
      top: 30px; }
      #sidebar.inactive {
        box-shadow: none; }
      #sidebar > .inner {
        -webkit-overflow-scrolling: touch;
        height: 100%;
        left: 0;
        overflow-x: hidden;
        overflow-y: auto;
        position: absolute;
        top: 0; }
        #sidebar > .inner:after {
          content: '';
          display: block;
          height: 4em;
          width: 100%; }
      #sidebar .toggle {
        text-indent: 6em;
        width: 6em; }
        #sidebar .toggle:before {
          font-size: 1.5rem;
          margin-left: -0.4375em; }
      body.is-preload #sidebar {
        display: none; } }
  @media screen and (max-width: 768px) {
    #sidebar .toggle {
      text-indent: 7.25em;
      width: 7.25em; }
      #sidebar .toggle:before {
        color: #676e74;
        margin-left: -0.0625em;
        margin-top: -0.25em;
        font-size: 1.1rem;
        z-index: 1; }
      #sidebar .toggle:after {
        background: rgba(195, 199, 202, 0.75);
        border-radius: 0.375em;
        content: '';
        height: 3.5em;
        left: 1em;
        position: absolute;
        top: 1em;
        width: 5em; } }

/* Menu */
#menu {
  background-color: #f5f6f7;
  position: relative; }
  #menu ul {
    -moz-user-select: none;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    color: #3d4449;
    font-family: "メイリオ", "ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", "Osaka", Arial, sans-serif;
    font-weight: 400;
    letter-spacing: 0.075em;
    list-style: none;
    margin-bottom: 0;
    padding: 0;
    /*text-transform: uppercase;*/ }
    #menu ul .selected {
      color: #ffffff;
      background-color: #666666; }
      #menu ul .selected:hover {
        color: #ffff00;
        background-color: #666666; }
    #menu ul .relative {
      color: #00a1ff;
      background-color: #e7f4fb; }
      #menu ul .relative:hover {
        color: #00a1ff;
        background-color: #c6ebff; }
    #menu ul .disabled {
      color: #bcbcbc;
      pointer-events: none; }
    #menu ul a, #menu ul span {
      border-bottom: 0;
      color: inherit;
      cursor: pointer;
      padding: 9px 0 9px 5px;
      display: flex;
      align-items: center; }
      #menu ul a .ico, #menu ul span .ico {
        font-size: 22px;
        padding: 0 4px 0 0;
        margin: 0; }
      #menu ul a .txt, #menu ul span .txt {
        line-height: 1.3;
        font-size: 14px;
        padding: 0;
        margin: 0; }
        #menu ul a .txt::before, #menu ul a .txt::after, #menu ul span .txt::before, #menu ul span .txt::after {
          content: '';
          display: block;
          height: 0;
          width: 0; }
        #menu ul a .txt::before, #menu ul span .txt::before {
          margin-bottom: calc(-0em + 0px); }
        #menu ul a .txt::after, #menu ul span .txt::after {
          margin-top: calc(-0.1642857143em + 0px); }
      #menu ul a:hover, #menu ul span:hover {
        color: #119dc7;
        background-color: #8787870a; }
      #menu ul a.opener, #menu ul span.opener {
        -moz-transition: color 0.2s ease-in-out;
        -webkit-transition: color 0.2s ease-in-out;
        -ms-transition: color 0.2s ease-in-out;
        transition: color 0.2s ease-in-out;
        text-decoration: none;
        -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
        position: relative; }
        #menu ul a.opener:before, #menu ul span.opener:before {
          -moz-osx-font-smoothing: grayscale;
          -webkit-font-smoothing: antialiased;
          display: inline-block;
          font-style: normal;
          font-variant: normal;
          text-rendering: auto;
          line-height: 1;
          text-transform: none !important;
          font-family: 'Font Awesome 5 Free';
          font-weight: 900; }
        #menu ul a.opener:before, #menu ul span.opener:before {
          -moz-transition: color 0.2s ease-in-out, -moz-transform 0.2s ease-in-out;
          -webkit-transition: color 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
          -ms-transition: color 0.2s ease-in-out, -ms-transform 0.2s ease-in-out;
          transition: color 0.2s ease-in-out, transform 0.2s ease-in-out;
          color: #9fa3a6;
          content: '\f078';
          position: absolute;
          right: 5px;
          top: calc(50% - 5px); }
        #menu ul a.opener:hover:before, #menu ul span.opener:hover:before {
          color: #119dc7; }
        #menu ul a.opener.active:before, #menu ul span.opener.active:before {
          -moz-transform: rotate(-180deg);
          -webkit-transform: rotate(-180deg);
          -ms-transform: rotate(-180deg);
          transform: rotate(-180deg); }
  #menu > ul > li {
    border-top: solid 1px rgba(210, 215, 217, 0.75);
    padding: 0; }
    #menu > ul > li > ul {
      color: #005981;
      display: none;
      margin: 0.5em 0 1.5em 0;
      padding-left: 1em; }
      #menu > ul > li > ul a, #menu > ul > li > ul span {
        font-size: 0.8em; }
      #menu > ul > li > ul > li {
        margin: 0.125em 0 0 0;
        padding: 0.125em 0 0 0; }
    #menu > ul > li:first-child {
      border-top: 0; }

.menu_aditional_info {
  margin-top: 20px;
  width: 100%;
  padding: 10px;
  color: #ffffff;
  background-color: #3b3b3b;
  border-radius: 7px; }
  .menu_aditional_info .description {
    width: 100%;
    text-align: left; }
  .menu_aditional_info .contact {
    margin-top: 10px;
    text-align: center; }
    .menu_aditional_info .contact .title {
      color: #aaaaaa; }
    .menu_aditional_info .contact .contents {
      color: #ffeb3b; }

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ Banner
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/* Banner */
/*
#banner {
    @include padding(6em, 0);
    @include vendor('display', 'flex');

    h1 {
        margin-top: -0.125em;
    }

    .content {
        @include vendor('flex-grow', '1');
        @include vendor('flex-shrink', '1');
        width: 50%;
    }

    .image {
        @include vendor('flex-grow', '0');
        @include vendor('flex-shrink', '0');
        display: block;
        margin: 0 0 _size(element-margin) (_size(element-margin) * 2);
        width: 50%;

        img {
            height: 100%;
            -moz-object-fit: cover;
            -webkit-object-fit: cover;
            -ms-object-fit: cover;
            object-fit: cover;
            -moz-object-position: center;
            -webkit-object-position: center;
            -ms-object-position: center;
            object-position: center;
            width: 100%;
        }
    }

    @include orientation(portrait) {
        @include vendor('flex-direction', 'column-reverse');

        h1 {
            br {
                display: none;
            }
        }

        .content {
            @include vendor('flex-grow', '0');
            @include vendor('flex-shrink', '0');
            width: 100%;
        }

        .image {
            @include vendor('flex-grow', '0');
            @include vendor('flex-shrink', '0');
            margin: 0 0 (_size(element-margin) * 2) 0;
            height: 25em;
            max-height: 50vh;
            min-height: 18em;
            width: 100%;
        }

        @include breakpoint('<=xsmall') {
            .image {
                max-height: 35vh;
            }
        }
    }
}
*/
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ フォーム関連
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*-------------------------------------------------------------------------------------------------
▼ FORM
-------------------------------------------------------------------------------------------------*/
.form {
  width: 100%;
  padding: 30px 0; }
  @media screen and (max-width: 980px) {
    .form {
      padding: 20px; } }
  @media screen and (max-width: 768px) {
    .form {
      padding: 10px; } }
  .form .group-title {
    width: 100%;
    margin: 1.8em 0 0.5em 0;
    display: flex;
    justify-content: flex-start;
    align-items: center; }
    .form .group-title .title {
      line-height: 1.3;
      font-size: 1.2em;
      font-weight: bold;
      color: #404040;
      white-space: nowrap; }
  .form .input-block {
    width: 100%;
    padding: 15px 0; }
    .form .input-block .tag {
      font-size: 0.95em;
      display: flex;
      align-items: center; }
      .form .input-block .tag .controls {
        margin-left: 20px; }
        .form .input-block .tag .controls .control {
          color: #ffffff;
          background-color: #119dc7;
          border-radius: 15px;
          padding: 4px 15px;
          font-size: 14px;
          line-height: 14px;
          cursor: pointer; }
          .form .input-block .tag .controls .control:before {
            color: #fff9c3;
            margin-right: 8px; }
          .form .input-block .tag .controls .control:hover {
            background-color: #29c1ef; }
          .form .input-block .tag .controls .control:active {
            background-color: #74abbb;
            margin: 1px -1px -1px 1px; }
    .form .input-block .input, .form .input-block .input-multi-line {
      width: 100%;
      display: flex;
      flex-wrap: nowrap;
      align-items: center;
      color: #636363;
      font-weight: normal;
      position: relative; }
      .form .input-block .input span, .form .input-block .input-multi-line span {
        margin: 0 5px; }
      .form .input-block .input .error-msg, .form .input-block .input-multi-line .error-msg {
        font-size: 12px;
        line-height: 12px;
        font-weight: normal;
        color: #ffeb3b;
        background-color: #434343;
        padding: 4px 15px;
        position: absolute;
        bottom: -21px; }
      .form .input-block .input .problem, .form .input-block .input-multi-line .problem {
        box-shadow: 0px 0px 1px 1px #000000 inset; }
    .form .input-block .input-multi-line {
      flex-wrap: wrap; }
    .form .input-block .password-eye {
      position: relative;
      width: 100%; }
      .form .input-block .password-eye .fa-eye, .form .input-block .password-eye .fa-eye-slash {
        position: absolute;
        right: 15px;
        top: 15px;
        cursor: pointer; }
    .form .input-block a {
      display: inline-block;
      text-decoration: underline; }
  .form .multi-block {
    display: flex; }
    @media screen and (max-width: 768px) {
      .form .multi-block {
        flex-wrap: wrap; } }
  .form .command {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 20px; }
    .form .command a {
      margin: 5px 8px; }
      .form .command a:active {
        margin: 6px 7px 4px 9px; }
  .form .description {
    width: 100%;
    text-align: justify; }
    .form .description .main {
      font-size: 18px;
      color: #444444; }
    .form .description .sub {
      font-size: 14px;
      color: #cf8585;
      margin-top: 10px; }
    .form .description a {
      display: inline-block;
      text-decoration: underline; }

/*-------------------------------------------------------------------------------------------------
▼ (管理)アクティブ詳細
-------------------------------------------------------------------------------------------------*/
/* active-detail */
.active-detail-opener {
  cursor: pointer; }

#active-detail {
  display: none;
  width: 50%;
  height: calc(100% - 30px);
  position: fixed;
  right: 0;
  background-color: #ffffff;
  box-shadow: 0 0 5em 0 rgba(0, 0, 0, 0.175); }
  @media screen and (max-width: 1680px) {
    #active-detail {
      width: 60%; } }
  @media screen and (max-width: 1280px) {
    #active-detail {
      width: 70%; } }
  @media screen and (max-width: 980px) {
    #active-detail {
      width: 80%; } }
  @media screen and (max-width: 768px) {
    #active-detail {
      width: 90%; } }
  @media screen and (max-width: 480px) {
    #active-detail {
      width: 92%; } }
  #active-detail .active-detail-wrapper {
    width: 100%;
    height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    padding: 20px 20px 0 40px; }
    @media screen and (max-width: 1280px) {
      #active-detail .active-detail-wrapper {
        padding: 20px 15px 0 40px; } }
    @media screen and (max-width: 980px) {
      #active-detail .active-detail-wrapper {
        padding: 20px 10px 0 30px; } }
    @media screen and (max-width: 768px) {
      #active-detail .active-detail-wrapper {
        padding: 70px 5px 0 15px; } }
    #active-detail .active-detail-wrapper .active-detail-contents {
      width: 100%;
      position: relative; }
      #active-detail .active-detail-wrapper .active-detail-contents .closer {
        position: absolute;
        top: 0;
        right: 4px;
        font-size: 2em;
        color: #c9c9c9;
        cursor: pointer; }
  #active-detail .active-detail-wrapper::-webkit-scrollbar {
    /* Chrome, Safari 対応 */
    width: 7px; }
  #active-detail .active-detail-wrapper::-webkit-scrollbar-track {
    background-color: #ccc; }
  #active-detail .active-detail-wrapper::-webkit-scrollbar-thumb {
    background-color: #8d004e; }
  #active-detail .active-detail-wait {
    background-image: url("images/loading.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100%;
    object-fit: contain;
    width: 60px;
    height: 60px;
    position: absolute;
    left: calc(50% - 30px);
    top: calc(50% - 30px);
    display: none;
    z-index: 1; }

.full-window {
  width: 70% !important; }
  @media screen and (max-width: 1680px) {
    .full-window {
      width: 74% !important; } }
  @media screen and (max-width: 1280px) {
    .full-window {
      width: 87% !important; } }
  @media screen and (max-width: 980px) {
    .full-window {
      width: 94% !important; } }
  @media screen and (max-width: 768px) {
    .full-window {
      width: 95% !important; } }
  @media screen and (max-width: 480px) {
    .full-window {
      width: 95% !important; } }

/* 詳細 */
.detail {
  /*共通ボタン*/
  /* 詳細ページテーブル */
  /* アクティブ詳細のスクロール可能なテーブル */
  /*車両サマリー*/
  /*ボタンコントロール領域*/
  /* 下部固定の表示 */ }
  .detail .tabs {
    width: 100%;
    display: flex;
    margin-bottom: 20px;
    overflow-x: auto;
    -ms-overflow-style: none;
    scrollbar-width: none; }
    .detail .tabs .tab {
      width: 200px;
      padding: 2px 10px;
      text-align: center;
      border: 1px solid #d9d9d9;
      background-color: #ebebeb;
      border-radius: 5px;
      margin: 0 5px;
      white-space: nowrap;
      cursor: pointer; }
      @media screen and (max-width: 768px) {
        .detail .tabs .tab {
          margin: 0 2px; } }
      .detail .tabs .tab:hover {
        color: #ffffff;
        background-color: #f27474;
        border: 1px solid #c76363; }
    .detail .tabs .active {
      color: #ffffff;
      background-color: #727040;
      border: 1px solid #6e6d4c;
      cursor: default; }
      .detail .tabs .active:hover {
        background-color: #727040;
        border: 1px solid #6e6d4c; }
  .detail .tabs::-webkit-scrollbar {
    /* Chrome, Safari 対応 */
    display: none; }
  .detail .must {
    color: #c19494;
    margin-left: 8px;
    font-size: 1em;
    line-height: 1px; }
  .detail .btn {
    height: 2.0em;
    line-height: 2.0em; }
  .detail .disabled {
    pointer-events: none !important;
    opacity: 0.35; }
  .detail table {
    width: 100%; }
    .detail table tr:nth-child(2n + 1) {
      background-color: unset; }
    .detail table tr:hover {
      background-color: #fefff7; }
    .detail table tr th {
      display: inline-flex;
      align-items: center;
      width: 30%;
      background-color: unset;
      font-size: 1em; }
      @media screen and (max-width: 980px) {
        .detail table tr th {
          width: 100%;
          padding: 0.5em 0.5em 0; } }
    .detail table tr td {
      display: inline-block;
      width: 70%;
      text-align: left;
      white-space: normal; }
      @media screen and (max-width: 980px) {
        .detail table tr td {
          width: 100%; } }
      .detail table tr td .comment {
        display: inline-block;
        font-size: 0.8em;
        color: #5a5a5a;
        margin: 0; }
        .detail table tr td .comment span {
          color: #d75151; }
  .detail .table-wrap {
    overflow-x: auto;
    margin-top: 1em;
    scrollbar-width: thin;
    scrollbar-color: #17585d #ccc; }
    .detail .table-wrap table tr {
      border: solid 1px rgba(210, 215, 217, 0.75);
      border-left: 0;
      border-right: 0; }
      .detail .table-wrap table tr th {
        display: table-cell;
        width: auto;
        color: #3d4449;
        background-color: #e5e5e5;
        font-size: 0.9em;
        font-weight: 600;
        line-height: 1em;
        padding: 0.5em 0.5em;
        text-align: left;
        white-space: nowrap; }
      .detail .table-wrap table tr td {
        display: table-cell;
        width: auto;
        padding: 0.5em 0.5em;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
        text-align: left; }
        .detail .table-wrap table tr td input[type="text"],
        .detail .table-wrap table tr td input[type="password"],
        .detail .table-wrap table tr td input[type="email"],
        .detail .table-wrap table tr td input[type="tel"],
        .detail .table-wrap table tr td input[type="search"],
        .detail .table-wrap table tr td input[type="url"] {
          padding: 0 0.25em; }
        .detail .table-wrap table tr td .group-input {
          display: flex;
          flex-wrap: nowrap;
          justify-content: space-around; }
          .detail .table-wrap table tr td .group-input input[type="text"] {
            margin: 0 1px; }
        .detail .table-wrap table tr td .pre-line {
          white-space: pre-line; }
          @media screen and (max-width: 768px) {
            .detail .table-wrap table tr td .pre-line {
              white-space: unset; } }
        .detail .table-wrap table tr td .multi-item {
          display: flex;
          flex-wrap: nowrap; }
          @media screen and (max-width: 980px) {
            .detail .table-wrap table tr td .multi-item {
              flex-wrap: nowrap; } }
          .detail .table-wrap table tr td .multi-item .unit {
            margin-right: 10px; }
            .detail .table-wrap table tr td .multi-item .unit .tip {
              color: #367fab;
              font-size: 12px;
              line-height: 12px;
              white-space: nowrap; }
        .detail .table-wrap table tr td .nowrap {
          flex-wrap: nowrap; }
        .detail .table-wrap table tr td .btn {
          width: 50px;
          margin: 0 1px; }
        .detail .table-wrap table tr td .icon-btn {
          color: #119dc7;
          font-size: 20px;
          margin-right: 18px;
          cursor: pointer; }
          .detail .table-wrap table tr td .icon-btn:last-child {
            margin-right: 0px; }
          .detail .table-wrap table tr td .icon-btn:hover {
            color: #29c1ef; }
          .detail .table-wrap table tr td .icon-btn:active {
            color: #74abbb; }
        .detail .table-wrap table tr td .icon-btn-dumy {
          color: transparent;
          font-size: 20px;
          margin-right: 18px;
          cursor: default; }
  .detail .table-wrap::-webkit-scrollbar {
    /* Chrome, Safari 対応 */
    height: 3px; }
  .detail .table-wrap::-webkit-scrollbar-track {
    background-color: #ccc; }
  .detail .table-wrap::-webkit-scrollbar-thumb {
    background-color: #a19c00; }
  .detail .group-title {
    width: 100%;
    margin: 2.8em 0 0.5em 0;
    display: flex;
    justify-content: flex-start;
    align-items: center; }
    .detail .group-title.first {
      margin: 1.0em 0 0.5em 0; }
    .detail .group-title .title {
      line-height: 1.3;
      font-size: 1.2em;
      font-weight: bold;
      color: #404040;
      white-space: nowrap; }
      .detail .group-title .title::before, .detail .group-title .title::after {
        content: '';
        display: block;
        height: 0;
        width: 0; }
      .detail .group-title .title::before {
        margin-bottom: calc(-0em + 0px); }
      .detail .group-title .title::after {
        margin-top: calc(-0.1642857143em + 0px); }
    .detail .group-title .control {
      display: flex;
      justify-content: flex-start;
      align-items: flex-start;
      margin-left: 20px;
      flex-wrap: wrap; }
      .detail .group-title .control .btn {
        height: 1.8em;
        line-height: 1.8em;
        margin: 0 2px; }
      .detail .group-title .control .mark {
        margin-left: 10px; }
  .detail .group-title-sub {
    margin: 1.4em 0 0.5em 0; }
    .detail .group-title-sub .title {
      font-size: 1.1em;
      line-height: 1.4em;
      color: #956d56; }
  .detail .sub-title {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    margin: 20px 0 5px 0; }
    .detail .sub-title .title {
      line-height: 1.3;
      font-size: 1.0em;
      font-weight: bold;
      color: #717171;
      white-space: nowrap;
      margin: 0; }
      .detail .sub-title .title::before, .detail .sub-title .title::after {
        content: '';
        display: block;
        height: 0;
        width: 0; }
      .detail .sub-title .title::before {
        margin-bottom: calc(-0em + 0px); }
      .detail .sub-title .title::after {
        margin-top: calc(-0.1642857143em + 0px); }
    .detail .sub-title:first-child {
      margin: 5px 0 5px 0; }
  .detail .summary {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    background-color: #f7f7f7;
    border: 1px solid #efefef;
    padding: 10px; }
    .detail .summary .photo {
      width: 112px;
      height: 112px; }
      @media screen and (max-width: 480px) {
        .detail .summary .photo {
          width: 100%;
          height: 150px; } }
      .detail .summary .photo img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 5px; }
    .detail .summary .detail {
      width: calc(100% - 112px);
      height: auto;
      padding-left: 25px;
      user-select: text; }
      @media screen and (max-width: 768px) {
        .detail .summary .detail {
          padding-left: 10px; } }
      @media screen and (max-width: 480px) {
        .detail .summary .detail {
          width: 100%;
          padding-left: 0; } }
  .detail .items {
    width: 100%;
    display: flex;
    flex-wrap: wrap; }
    .detail .items .one-item {
      display: flex;
      flex-direction: column;
      padding: 5px 5px 5px 0; }
      .detail .items .one-item .tag {
        display: flex;
        align-items: center;
        font-size: 0.90em;
        line-height: 1.10em;
        color: #666666; }
        .detail .items .one-item .tag p {
          color: #ffffff;
          background-color: #119dc7;
          padding: 2px 15px 1px;
          font-size: 12px;
          line-height: 12px;
          font-weight: normal;
          border-radius: 7px;
          margin: 0 0 3px 5px;
          cursor: pointer; }
          .detail .items .one-item .tag p:hover {
            background-color: #e3a508; }
          .detail .items .one-item .tag p:active {
            background-color: #997e3b; }
      .detail .items .one-item .value .fix-val {
        color: #333333;
        font-size: 1.1em;
        line-height: 1.1em;
        font-weight: normal;
        margin: 0.2em 0 0.2em 0; }
      .detail .items .one-item .multi {
        display: flex;
        flex-wrap: nowrap;
        align-items: center; }
        .detail .items .one-item .multi .tag {
          color: #999999;
          font-size: 0.8em;
          line-height: 0.8em;
          font-weight: normal;
          margin-left: 5px; }
    .detail .items .comment {
      width: 100%;
      font-size: 0.8em;
      color: #a9a9a9;
      margin: 0; }
      .detail .items .comment .warn {
        color: #af2323; }
    .detail .items .summary {
      width: 100%;
      background-color: #eeeeee;
      display: flex;
      justify-content: flex-start;
      flex-wrap: wrap;
      padding: 10px;
      margin-top: 5px; }
      .detail .items .summary .one-value {
        display: flex;
        flex-direction: column;
        margin: 0 20px; }
        .detail .items .summary .one-value .tag {
          font-size: 0.85em; }
        .detail .items .summary .one-value .value {
          color: #666666;
          font-size: 1em; }
    .detail .items .items-sub-title {
      width: 100%;
      color: #d7623d;
      font-size: 16px;
      font-weight: bold;
      line-height: 18px;
      margin-bottom: 10px; }
  .detail .group {
    padding: 10px;
    border: 2px solid #c9afaf;
    margin: 20px 0; }
  .detail .additional-edit {
    width: 100%;
    padding: 10px;
    background-color: #f4f7eb;
    display: none;
    flex-direction: column;
    margin-top: 10px; }
    .detail .additional-edit .additional-detail {
      width: 100%; }
    .detail .additional-edit .command {
      display: flex;
      justify-content: flex-start;
      margin-top: 10px; }
  .detail .action {
    width: 100%;
    margin: 20px 0;
    padding: 10px 0; }
  .detail .fixed-action {
    width: 100%;
    margin: 50px 0 0;
    padding: 10px;
    background-color: #efeee6;
    position: sticky;
    bottom: 0;
    border-top: 1px solid #c3c1b4;
    border-left: 1px solid #c3c1b4;
    border-right: 1px solid #c3c1b4;
    border-bottom: 1px solid #c3c1b4;
    /*表示位置調整用ボタン*/ }
    @media screen and (max-width: 768px) {
      .detail .fixed-action {
        padding: 10px; } }
    @media screen and (max-width: 480px) {
      .detail .fixed-action {
        padding: 10px 5px 10px 5px; } }
    .detail .fixed-action .pos-sticky-control {
      position: absolute;
      right: -1px;
      top: -35px;
      width: 35px;
      height: 35px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #ff7702;
      background-color: #efeee6;
      font-size: 20px;
      cursor: pointer;
      border-left: 1px solid #c3c1b4;
      border-top: 1px solid #c3c1b4;
      border-right: 1px solid #c3c1b4; }
    .detail .fixed-action .contents {
      width: 100%; }
      .detail .fixed-action .contents .group-summary {
        width: 100%;
        display: flex;
        justify-content: flex-start;
        flex-wrap: wrap;
        margin: 0 0 20px 0; }
        .detail .fixed-action .contents .group-summary .one-value {
          display: flex;
          flex-direction: column;
          margin: 0 20px; }
          .detail .fixed-action .contents .group-summary .one-value .tag {
            font-size: 0.85em; }
          .detail .fixed-action .contents .group-summary .one-value .value {
            color: #666666;
            font-size: 1.1em;
            font-weight: bold; }
    .detail .fixed-action .control {
      width: 100%; }
  .detail .inside {
    border-top: 1px solid #efeee6;
    border-left: 1px solid #efeee6;
    border-right: 1px solid #efeee6; }
    .detail .inside .pos-sticky-control {
      color: #8b8681;
      border-left: 1px solid #efeee6;
      border-top: 1px solid #efeee6;
      border-right: 1px solid #efeee6; }
  .detail .select2-selection--single {
    height: 2.75em; }

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ iziModalダイアルログ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.izi-select-dlg {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 30px;
  border: 20px solid #e7e7e7; }
  .izi-select-dlg .izi-close {
    background-color: #a5a5a5;
    color: #ffffff;
    border: 2px solid #ffffff;
    border-radius: 16px;
    width: 30px;
    height: 30px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    position: absolute !important;
    right: 8px;
    top: 8px;
    transform: rotate(0deg);
    animation: rotate_0 0.65s forwards; }
    .izi-select-dlg .izi-close:hover {
      animation: rotate_90 0.65s forwards; }
    .izi-select-dlg .izi-close:active {
      width: 28px;
      height: 28px;
      right: 9px;
      top: 9px; }
  .izi-select-dlg .izi-title {
    width: 100%;
    color: #414141;
    font-size: 24px;
    font-weight: bold;
    line-height: 26px;
    text-align: center; }
  .izi-select-dlg .izi-contents {
    font-size: 18px;
    line-height: 22px;
    color: #414141;
    margin-top: 20px; }
  .izi-select-dlg .izi-warn {
    display: flex;
    font-size: 14px;
    line-height: 16px;
    color: #658f1a;
    margin-top: 10px; }
  .izi-select-dlg .izi-control {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 25px; }
    .izi-select-dlg .izi-control .izi-btn {
      display: flex;
      padding: 5px 20px;
      color: #ffffff;
      background-color: #2f2f2f;
      margin: 0 3%;
      border-radius: 20px;
      cursor: pointer;
      white-space: nowrap; }
      .izi-select-dlg .izi-control .izi-btn:hover {
        background-color: #ff6666; }
      .izi-select-dlg .izi-control .izi-btn:active {
        padding: 4px 19px;
        margin: 1px calc(3% + 1px); }
    .izi-select-dlg .izi-control .izi-cancel {
      color: #ffffff;
      background-color: #797979; }

.timeout {
  border: 20px solid #ffc107;
  background-color: #ffc10747; }
  .timeout .izi-close {
    background-color: #ffc107; }
  .timeout .izi-contents {
    font-size: 22px;
    line-height: 26px;
    color: #d7a81c;
    margin-bottom: 20px; }

@keyframes rotate_90 {
  0% {
    transform: rotate(0deg);
    background-color: #666666; }
  100% {
    transform: rotate(90deg);
    background-color: #ff6666; } }
@keyframes rotate_0 {
  0% {
    transform: rotate(0deg) scale(0.5); }
  100% {
    transform: rotate(-90deg) scale(1); } }
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ MAIN DIV（UI、管理画面）
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
main {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  position: relative; }
  main.center {
    display: flex; }
  main.foot-deco, main.foot-deco2 {
    background-position: bottom center;
    background-repeat: no-repeat;
    background-size: auto; }
    @media screen and (max-width: 768px) {
      main.foot-deco, main.foot-deco2 {
        background-size: 200%; } }
  main.foot-deco {
    background-image: url(images/shape_background.svg); }
  main.foot-deco2 {
    background-image: url(images/circle_background.svg); }
  main > .inner {
    padding: 0 6em 0.1em 6em ;
    margin: 0 auto;
    max-width: 1600px;
    min-height: calc(100% - 30px);
    overflow-x: hidden; }
    main > .inner > section {
      /*@include padding(3em, 0);*/
      padding: 2em 0 2em 0;
      border-top: solid 2px rgba(210, 215, 217, 0.75);
            /*
            > .list-search {
                width: 100%;
                margin-bottom: 1em;

                > form {
                    width: 100%;
                    display: flex;
                    flex-wrap: wrap;

                    .default {
                        width: 100%;
                        display: flex;
                        align-items: center;
                        justify-content: space-between;

                        .expand {
                            display: flex;
                            color: _palette(accent);
                            font-size: 1.1em;
                            white-space: nowrap;
                            cursor: pointer;

                            span {
                                margin-left: 8px;
                            }
                        }

                        .search {
                            display: flex;
                            flex-wrap: nowrap;
                            align-items: center;
                            margin-left: 15px;

                            select {
                                height: 1.9em;
                                margin-right: 0.3em;
                            }
                        }
                    }

                    .options {
                        //display: flex;
                        display: none;
                        flex-wrap: wrap;
                        width: 100%;
                        border: 3px solid #dfdfdf;
                        margin-top: 0.5em;
                        padding: 15px;
                        border-radius: 5px;

                        .search-one {
                            display: flex;
                            flex-direction: column;
                            justify-content: space-around;
                            padding: 0 0.3em;

                            .tag {
                                font-size: 0.9em;
                                white-space: nowrap;
                            }
                            .condition {
                                display: flex;
                                align-items: center;
                                flex-wrap: nowrap;

                                input[type='text'],
                                input[type='date'],
                                select, a {
                                    height: 2em;
                                }

                                .clear {
                                    box-shadow: inset 0 0 0 1px #c9c9c9;
                                    color: #b3b3b3 !important;
                                    background-color: #f4f4f4;
                                    letter-spacing: -2px;

                                    &:hover {
                                        background-color: #e4e4e4;
                                    }
                                    &:active {
                                        background-color: #d7d7d7;
                                    }
                                }
                            }
                        }
                    }
                }
            }

            > .list-control {
                width: 100%;
                display: flex;
                align-items: center;
                justify-content: space-between;
                padding: 5px 0;

                .info {
                    display: flex;
                    align-items: center;

                    .txt {
                        font-size: 1.2em;
                        font-weight: bold;
                        padding: 0 5px 0 0;
                        color: _palette(accent);
                    }
                    .tag {
                        font-size: 0.8em;
                    }
                }
                .command {
                }
            }

            > .top-message {
                width: 100%;
                padding: 10px;

                .message {
                    width: 100%;
                    padding: 15px 20px;
                    margin-bottom: 20px;
                    color: #ffffff;
                    background-color: #c55864;
                    border: 3px solid #ffffff;
                    box-shadow: 0 0 0 1px #c55864;
                    display: flex;
                    flex-wrap: nowrap;
                    align-items: center;

                    .ico {
                        font-size: 2.0em;
                        padding-right: 10px;
                    }
                    .txt {
                        font-size: 1.1em;
                    }
                }
            }

            > .top-dash-board {
                width: 100%;
                display: flex;
                flex-wrap: wrap;
                justify-content: space-around;

                .dash-board {
                    display: inline-block;
                    width: 47.5%;
                    min-height: 200px;
                    margin-bottom: 20px;
                    padding: 20px;
                    border-radius: 10px;
                    position: relative;

                    @include breakpoint('<=small') {
                        width: 100%;
                        padding: 15px 10px;
                    }

                    .block-title {
                        width: 50%;
                        min-width: 180px;
                        max-width: 250px;
                        display: flex;
                        color: #ffffff;
                        background-color: _palette(accent-back); //#8d7263;
                        border-radius: 0 20px 0 0;
                        padding: 8px 5px 8px 20px;
                        font-size: 18px;
                        font-weight: bold;
                        white-space: nowrap;

                        .ico {
                            padding-right: 10px;
                            padding-top: 2px;
                        }
                        .txt {

                        }
                    }

                    .block-contents {
                        min-height: 100px;
                        border: 1px solid _palette(accent-back); //#8d7263;
                        padding: 10px;
                        background-color: _palette(accent-thin-back); //#fffcfa;

                        .info-item {
                            width: 100%;
                            display: flex;
                            justify-content: space-between;
                            padding: 5px 0;
                            border-bottom: 1px solid _palette(accent-thin-line);    //#d5c7c0

                            @include breakpoint('<=medium') {
                                padding: 5px 5px;
                            }

                            &:last-child {
                                border-bottom: unset;
                            }

                            .title {
                                padding: 8px 0 8px 10px;
                                white-space: nowrap;
                                line-height: 18px;
                                color: _palette(accent-dark-text);  //#996d52

                                @include breakpoint('<=small') {
                                    padding: 8px 0 8px 0;
                                }
                            }

                            .value {
                                padding: 8px 10px 8px 0;
                                line-height: 18px;
                                font-size: 18px;
                                font-weight: bold;
                                color: _palette(accent-dark-text);    //#72635a;
                                text-align: right;

                                @include breakpoint('<=small') {
                                    padding: 8px 0 8px 0;
                                    font-size: 15px;
                                }
                            }
                        }
                    }

                    .optional-info {
                        position: absolute;
                        right: 40px;
                        top: 20px;
                        width: 30px;
                        height: 30px;
                        cursor: pointer;

                        @include breakpoint('<=medium') {
                            right: 30px;
                        }
                        @include breakpoint('<=small') {
                            right: 20px;
                        }

                        .ico {
                            font-size: 35px;
                            color: _palette(accent-thin-line);

                            &:hover {
                                color: _palette(button-primary-hover);
                            }
                        }
                    }
                }
            }
            */ }
      main > .inner > section:first-of-type {
        border-top: 0 !important; }
      main > .inner > section > .table-wrap {
        overflow-x: auto;
        scrollbar-width: thin;
        scrollbar-color: #17585d #ccc; }
      main > .inner > section > .table-wrap::-webkit-scrollbar {
        height: 7px; }
      main > .inner > section > .table-wrap::-webkit-scrollbar-track {
        background-color: #ccc; }
      main > .inner > section > .table-wrap::-webkit-scrollbar-thumb {
        background-color: #db8403; }
  @media screen and (max-width: 1680px) {
    main > .inner {
      /*@include padding(0, 3em);*/
      padding: 0 1.5em 0.1em 1.5em ; }
      main > .inner > section {
        /*@include padding(3em, 0);*/
        padding: 2em 0 2em 0; } }
  @media screen and (max-width: 1280px) {
    main > .inner {
      padding: 0 3em 0.1em 3em ; }
      main > .inner > section {
        /*@include padding(2em, 0);*/
        padding: 2em 0 2em 0; } }
  @media screen and (max-width: 980px) {
    main > .inner {
      padding: 0 1.5em 0.1em 1.5em ; }
      main > .inner > section {
        /*@include padding(2em, 0);*/
        padding: 2em 0 2em 0; } }
  @media screen and (max-width: 768px) {
    main > .inner {
      padding: 0 0.5em 0.1em 0.5em ; }
      main > .inner > section {
        /*@include padding(1.5em, 0);*/
        padding: 1.5em 0 2em 0; } }

/*
#main::-webkit-scrollbar {
    width: 7px;
}
#main::-webkit-scrollbar-track{
   background-color: #ccc;
}
#main::-webkit-scrollbar-thumb{
   background-color: #17585d;
}
*/
/* main-mng */
#main-mng {
  -moz-flex-grow: 1;
  -webkit-flex-grow: 1;
  -ms-flex-grow: 1;
  flex-grow: 1;
  -moz-flex-shrink: 1;
  -webkit-flex-shrink: 1;
  -ms-flex-shrink: 1;
  flex-shrink: 1;
  width: 100%;
  height: calc(100% - 30px);
  position: fixed;
  overflow: hidden auto; }
  #main-mng > .inner {
    padding: 0 6em 0.1em 6em ;
    margin: 0 auto;
    max-width: 1600px;
    min-height: calc(100% - 30px);
    overflow-x: hidden; }
    #main-mng > .inner > section {
      /*@include padding(3em, 0);*/
      padding: 2em 0 2em 0;
      border-top: solid 2px rgba(210, 215, 217, 0.75); }
      #main-mng > .inner > section:first-of-type {
        border-top: 0 !important; }
      #main-mng > .inner > section > .table-wrap {
        overflow-x: auto;
        scrollbar-width: thin;
        scrollbar-color: #17585d #ccc; }
      #main-mng > .inner > section > .table-wrap::-webkit-scrollbar {
        height: 7px; }
      #main-mng > .inner > section > .table-wrap::-webkit-scrollbar-track {
        background-color: #ccc; }
      #main-mng > .inner > section > .table-wrap::-webkit-scrollbar-thumb {
        background-color: #db8403; }
      #main-mng > .inner > section > .list-search {
        width: 100%;
        margin-bottom: 1em; }
        #main-mng > .inner > section > .list-search > form {
          width: 100%;
          display: flex;
          flex-wrap: wrap; }
          #main-mng > .inner > section > .list-search > form .default {
            width: 100%;
            display: flex;
            align-items: center;
            justify-content: space-between; }
            #main-mng > .inner > section > .list-search > form .default .expand {
              display: flex;
              color: #119dc7;
              font-size: 1.1em;
              white-space: nowrap;
              cursor: pointer; }
              #main-mng > .inner > section > .list-search > form .default .expand span {
                margin-left: 8px; }
            #main-mng > .inner > section > .list-search > form .default .search {
              display: flex;
              flex-wrap: nowrap;
              align-items: center;
              margin-left: 15px; }
              #main-mng > .inner > section > .list-search > form .default .search select {
                height: 1.9em;
                margin-right: 0.3em; }
          #main-mng > .inner > section > .list-search > form .options {
            display: none;
            flex-wrap: wrap;
            width: 100%;
            border: 3px solid #dfdfdf;
            margin-top: 0.5em;
            padding: 15px;
            border-radius: 5px; }
            #main-mng > .inner > section > .list-search > form .options .search-one {
              display: flex;
              flex-direction: column;
              justify-content: space-around;
              padding: 0 0.3em; }
              #main-mng > .inner > section > .list-search > form .options .search-one .tag {
                font-size: 0.9em;
                white-space: nowrap; }
              #main-mng > .inner > section > .list-search > form .options .search-one .condition {
                display: flex;
                align-items: center;
                flex-wrap: nowrap; }
                #main-mng > .inner > section > .list-search > form .options .search-one .condition input[type='text'],
                #main-mng > .inner > section > .list-search > form .options .search-one .condition input[type='date'],
                #main-mng > .inner > section > .list-search > form .options .search-one .condition select, #main-mng > .inner > section > .list-search > form .options .search-one .condition a {
                  height: 2em; }
                #main-mng > .inner > section > .list-search > form .options .search-one .condition .clear {
                  box-shadow: inset 0 0 0 1px #c9c9c9;
                  color: #b3b3b3 !important;
                  background-color: #f4f4f4;
                  letter-spacing: -2px; }
                  #main-mng > .inner > section > .list-search > form .options .search-one .condition .clear:hover {
                    background-color: #e4e4e4; }
                  #main-mng > .inner > section > .list-search > form .options .search-one .condition .clear:active {
                    background-color: #d7d7d7; }
      #main-mng > .inner > section > .list-control {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 5px 0; }
        #main-mng > .inner > section > .list-control .info {
          display: flex;
          align-items: center; }
          #main-mng > .inner > section > .list-control .info .txt {
            font-size: 1.2em;
            font-weight: bold;
            padding: 0 5px 0 0;
            color: #119dc7; }
          #main-mng > .inner > section > .list-control .info .tag {
            font-size: 0.8em; }
      #main-mng > .inner > section > .top-message {
        width: 100%;
        padding: 10px; }
        #main-mng > .inner > section > .top-message .message {
          width: 100%;
          padding: 15px 20px;
          margin-bottom: 20px;
          color: #ffffff;
          background-color: #c55864;
          border: 3px solid #ffffff;
          box-shadow: 0 0 0 1px #c55864;
          display: flex;
          flex-wrap: nowrap;
          align-items: center; }
          #main-mng > .inner > section > .top-message .message .ico {
            font-size: 2.0em;
            padding-right: 10px; }
          #main-mng > .inner > section > .top-message .message .txt {
            font-size: 1.1em; }
      #main-mng > .inner > section > .top-dash-board {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-around; }
        #main-mng > .inner > section > .top-dash-board .dash-board {
          display: inline-block;
          width: 47.5%;
          min-height: 200px;
          margin-bottom: 20px;
          padding: 20px;
          border-radius: 10px;
          position: relative; }
          @media screen and (max-width: 768px) {
            #main-mng > .inner > section > .top-dash-board .dash-board {
              width: 100%;
              padding: 15px 10px; } }
          #main-mng > .inner > section > .top-dash-board .dash-board .block-title {
            width: 50%;
            min-width: 180px;
            max-width: 250px;
            display: flex;
            color: #ffffff;
            background-color: #2895b7;
            border-radius: 0 20px 0 0;
            padding: 8px 5px 8px 20px;
            font-size: 18px;
            font-weight: bold;
            white-space: nowrap; }
            #main-mng > .inner > section > .top-dash-board .dash-board .block-title .ico {
              padding-right: 10px;
              padding-top: 2px; }
          #main-mng > .inner > section > .top-dash-board .dash-board .block-contents {
            min-height: 100px;
            border: 1px solid #2895b7;
            padding: 10px;
            background-color: #fbfeff; }
            #main-mng > .inner > section > .top-dash-board .dash-board .block-contents .info-item {
              width: 100%;
              display: flex;
              justify-content: space-between;
              padding: 5px 0;
              border-bottom: 1px solid #acd9e7; }
              @media screen and (max-width: 980px) {
                #main-mng > .inner > section > .top-dash-board .dash-board .block-contents .info-item {
                  padding: 5px 5px; } }
              #main-mng > .inner > section > .top-dash-board .dash-board .block-contents .info-item:last-child {
                border-bottom: unset; }
              #main-mng > .inner > section > .top-dash-board .dash-board .block-contents .info-item .title {
                padding: 8px 0 8px 10px;
                white-space: nowrap;
                line-height: 18px;
                color: #1b647b; }
                @media screen and (max-width: 768px) {
                  #main-mng > .inner > section > .top-dash-board .dash-board .block-contents .info-item .title {
                    padding: 8px 0 8px 0; } }
              #main-mng > .inner > section > .top-dash-board .dash-board .block-contents .info-item .value {
                padding: 8px 10px 8px 0;
                line-height: 18px;
                font-size: 18px;
                font-weight: bold;
                color: #1b647b;
                text-align: right; }
                @media screen and (max-width: 768px) {
                  #main-mng > .inner > section > .top-dash-board .dash-board .block-contents .info-item .value {
                    padding: 8px 0 8px 0;
                    font-size: 15px; } }
                #main-mng > .inner > section > .top-dash-board .dash-board .block-contents .info-item .value.point {
                  font-size: 26px;
                  color: #e91e63; }
          #main-mng > .inner > section > .top-dash-board .dash-board .optional-info {
            position: absolute;
            right: 40px;
            top: 20px;
            width: 30px;
            height: 30px;
            cursor: pointer; }
            @media screen and (max-width: 980px) {
              #main-mng > .inner > section > .top-dash-board .dash-board .optional-info {
                right: 30px; } }
            @media screen and (max-width: 768px) {
              #main-mng > .inner > section > .top-dash-board .dash-board .optional-info {
                right: 20px; } }
            #main-mng > .inner > section > .top-dash-board .dash-board .optional-info .ico {
              font-size: 35px;
              color: #acd9e7; }
              #main-mng > .inner > section > .top-dash-board .dash-board .optional-info .ico:hover {
                color: #29c1ef; }
  @media screen and (max-width: 1680px) {
    #main-mng > .inner {
      /*@include padding(0, 3em);*/
      padding: 0 1.5em 0.1em 1.5em ; }
      #main-mng > .inner > section {
        /*@include padding(3em, 0);*/
        padding: 2em 0 2em 0; } }
  @media screen and (max-width: 1280px) {
    #main-mng > .inner {
      padding: 0 3em 0.1em 3em ; }
      #main-mng > .inner > section {
        /*@include padding(2em, 0);*/
        padding: 2em 0 2em 0; } }
  @media screen and (max-width: 980px) {
    #main-mng > .inner {
      padding: 0 1.5em 0.1em 1.5em ; }
      #main-mng > .inner > section {
        /*@include padding(2em, 0);*/
        padding: 2em 0 2em 0; } }
  @media screen and (max-width: 768px) {
    #main-mng > .inner {
      padding: 0 0.5em 0.1em 0.5em ; }
      #main-mng > .inner > section {
        /*@include padding(1.5em, 0);*/
        padding: 1.5em 0 2em 0; } }

#main-mng::-webkit-scrollbar {
  /* Chrome, Safari 対応 */
  width: 7px; }

#main-mng::-webkit-scrollbar-track {
  background-color: #ccc; }

#main-mng::-webkit-scrollbar-thumb {
  background-color: #17585d; }

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ UI用各パーツ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*-------------------------------------------------------------------------------------------------
▼ ページタイトル
-------------------------------------------------------------------------------------------------*/
.page-title {
  width: 100%;
  height: 90px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-bottom: 1px solid #eee;
  font-size: 26px;
  line-height: 26px;
  color: #666666; }
  @media screen and (max-width: 768px) {
    .page-title {
      height: 45px;
      font-size: 18px;
      line-height: 18px; } }

.page-banner {
  width: 100%;
  display: block; }
  .page-banner img {
    width: 100%;
    object-fit: contain; }

/*-------------------------------------------------------------------------------------------------
▼ ブロックタイトル
-------------------------------------------------------------------------------------------------*/
.block-title {
  width: 100%;
  font-size: 28px;
  line-height: 28px;
  font-weight: bold;
  text-align: center;
  margin: 80px 0 20px;
  color: #323232; }
  .block-title.first {
    margin: 0 0 20px; }
  @media screen and (max-width: 768px) {
    .block-title {
      font-size: 26px;
      line-height: 26px;
      margin-top: 60px; } }

.block-title-with-option {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  margin-top: 50px;
  padding: 0 5px; }
  .block-title-with-option .title {
    display: flex;
    align-items: center; }
    .block-title-with-option .title .main {
      font-size: 22px;
      font-weight: bold;
      color: #323232; }
    .block-title-with-option .title .jk-translate {
      margin-left: 20px; }
      .block-title-with-option .title .jk-translate:active {
        margin: 1px -1px -1px 21px; }
    .block-title-with-option .title .sub {
      font-size: 14px;
      white-space: nowrap; }
  .block-title-with-option .more {
    font-size: 14px;
    font-weight: normal;
    color: #119dc7;
    cursor: pointer;
    white-space: nowrap;
    padding: 8px 0; }
    .block-title-with-option .more:before {
      font-weight: bold;
      padding-right: 7px; }
    .block-title-with-option .more:hover {
      color: #ffa000; }
  .block-title-with-option .favorite {
    width: 24px;
    height: 30px;
    margin: 0 7px;
    cursor: pointer; }
    .block-title-with-option .favorite:before {
      font-family: 'Font Awesome 5 Free';
      content: '\f004';
      font-size: 24px;
      line-height: 24px;
      position: absolute;
      font-weight: normal;
      color: #4b4b4b; }
    .block-title-with-option .favorite:hover:before {
      color: #ffc107; }
    .block-title-with-option .favorite:active {
      margin: 1px 6px -1px 8px; }
    .block-title-with-option .favorite.favorited:before {
      font-weight: bold;
      color: #e91e63; }
    .block-title-with-option .favorite.favorited:hover:before {
      color: #ff94b8; }
  .block-title-with-option.first {
    margin-top: unset; }

/*-------------------------------------------------------------------------------------------------
▼ 共通ページ枠
-------------------------------------------------------------------------------------------------*/
.common-page {
  width: 100%;
  padding: 20px 10px 80px;
  display: flex; }
  @media screen and (max-width: 980px) {
    .common-page {
      padding: 15px 15px 65px; } }
  @media screen and (max-width: 768px) {
    .common-page {
      padding: 10px 10px 50px; } }
  .common-page .common-contents {
    width: 100%;
    padding: 0; }
    @media screen and (max-width: 980px) {
      .common-page .common-contents {
        padding: 0; } }
    @media screen and (max-width: 768px) {
      .common-page .common-contents {
        padding: 0; } }

/*-------------------------------------------------------------------------------------------------
▼ マイページ
-------------------------------------------------------------------------------------------------*/
.my-page {
  width: 100%;
  padding: 20px 20px 80px;
  display: flex; }
  @media screen and (max-width: 980px) {
    .my-page {
      padding: 15px 15px 60px; } }
  @media screen and (max-width: 768px) {
    .my-page {
      padding: 10px 10px 50px; } }
  .my-page .my-menu {
    width: 230px;
    height: fit-content;
    /*min-height: 100%;*/
    position: sticky;
    top: 100px; }
    @media screen and (max-width: 980px) {
      .my-page .my-menu {
        width: 200px; } }
    @media screen and (max-width: 768px) {
      .my-page .my-menu {
        display: none; } }
    .my-page .my-menu .profile {
      width: 100%;
      display: flex;
      flex-direction: column;
      align-items: center; }
      .my-page .my-menu .profile img {
        width: 100px;
        height: 100px;
        object-fit: cover;
        border-radius: 50%;
        cursor: pointer; }
        @media screen and (max-width: 980px) {
          .my-page .my-menu .profile img {
            width: 90px;
            height: 90px; } }
      .my-page .my-menu .profile .name {
        font-size: 14px; }
    .my-page .my-menu .menu-items {
      width: 100%;
      padding: 20px 0; }
      .my-page .my-menu .menu-items .item {
        width: 100%;
        height: 30px;
        display: flex;
        align-items: center;
        padding: 23px 10px 23px 20px;
        color: #595959;
        border-bottom: 1px solid #e3e3e3;
        white-space: nowrap;
        cursor: pointer; }
        @media screen and (max-width: 980px) {
          .my-page .my-menu .menu-items .item {
            padding: 20px 10px 20px 10px; } }
        .my-page .my-menu .menu-items .item .ico {
          font-size: 22px;
          padding: 0px 5px 3px 0px; }
          @media screen and (max-width: 980px) {
            .my-page .my-menu .menu-items .item .ico {
              font-size: 20px; } }
        .my-page .my-menu .menu-items .item .txt {
          font-size: 16px;
          line-height: 16px; }
          @media screen and (max-width: 980px) {
            .my-page .my-menu .menu-items .item .txt {
              font-size: 14px;
              line-height: 14px; } }
        .my-page .my-menu .menu-items .item:last-child {
          border-bottom: unset; }
        .my-page .my-menu .menu-items .item:hover {
          background-color: #66666617; }
        .my-page .my-menu .menu-items .item.selected {
          color: #ffffff;
          background-color: #666666; }
          .my-page .my-menu .menu-items .item.selected:hover {
            color: #ffff00; }
  .my-page .my-contents {
    width: calc(100% - 230px);
    min-height: 100%;
    padding: 0 30px; }
    @media screen and (max-width: 980px) {
      .my-page .my-contents {
        width: calc(100% - 200px);
        padding: 0 20px; } }
    @media screen and (max-width: 768px) {
      .my-page .my-contents {
        width: 100%;
        padding: 0; } }
    .my-page .my-contents .list-control {
      width: 100%;
      display: flex;
      justify-content: space-between;
      align-items: flex-end;
      margin: 10px 0;
      padding: 0 1px; }
      .my-page .my-contents .list-control .infors {
        color: #444444; }
        .my-page .my-contents .list-control .infors .point {
          font-size: 18px;
          font-weight: bold;
          padding: 0 10px; }
      .my-page .my-contents .list-control .controls {
        display: flex;
        flex-wrap: nowrap; }
        .my-page .my-contents .list-control .controls .button {
          height: 2.0em;
          line-height: 2.0em; }
    .my-page .my-contents .border-block {
      border: 3px solid #eaeaea;
      padding: 20px;
      border-radius: 10px;
      margin-bottom: 20px; }
      @media screen and (max-width: 980px) {
        .my-page .my-contents .border-block {
          padding: 15px;
          border-radius: 10px; } }
      @media screen and (max-width: 768px) {
        .my-page .my-contents .border-block {
          padding: 10px;
          border-radius: 8px; } }
    .my-page .my-contents .mypage-command {
      width: 100%;
      display: flex;
      flex-wrap: wrap; }
      .my-page .my-contents .mypage-command .one-command {
        width: 50%;
        padding: 10px 30px;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-around;
        align-items: center; }
        @media screen and (max-width: 1280px) {
          .my-page .my-contents .mypage-command .one-command {
            width: 100%; } }
        @media screen and (max-width: 480px) {
          .my-page .my-contents .mypage-command .one-command {
            flex-wrap: wrap; } }
        .my-page .my-contents .mypage-command .one-command .contents {
          display: flex;
          flex-wrap: nowrap;
          align-items: center;
          width: calc(100% - 140px); }
          @media screen and (max-width: 480px) {
            .my-page .my-contents .mypage-command .one-command .contents {
              width: 100%; } }
          .my-page .my-contents .mypage-command .one-command .contents .ico {
            width: 40px;
            color: #77838b;
            font-size: 30px;
            padding-bottom: 1px; }
          .my-page .my-contents .mypage-command .one-command .contents .description {
            width: calc(100% - 40px); }
        .my-page .my-contents .mypage-command .one-command .command {
          width: 130px;
          padding: 3px 10px;
          margin-left: 10px;
          text-align: center;
          color: #6d6d6d;
          border: 1px solid #bbbbbb;
          border-radius: 4px;
          display: flex;
          align-items: center;
          justify-content: center;
          cursor: pointer; }
          @media screen and (max-width: 480px) {
            .my-page .my-contents .mypage-command .one-command .command {
              margin-left: unset;
              margin-top: 10px; } }
          .my-page .my-contents .mypage-command .one-command .command:hover {
            color: #ffffff;
            background-color: #575757; }
          .my-page .my-contents .mypage-command .one-command .command:active {
            margin: 1px -1px -1px 11px; }
            @media screen and (max-width: 480px) {
              .my-page .my-contents .mypage-command .one-command .command:active {
                margin: 11px -1px -1px 1px; } }
          .my-page .my-contents .mypage-command .one-command .command.disabled {
            border: 1px solid #e1e1e1;
            color: #d7d7d7;
            pointer-events: none; }
            .my-page .my-contents .mypage-command .one-command .command.disabled span {
              pointer-events: auto; }
            .my-page .my-contents .mypage-command .one-command .command.disabled:hover {
              color: #d7d7d7;
              background-color: unset; }
    .my-page .my-contents .dash-board {
      width: 100%;
      display: flex;
      flex-wrap: wrap;
      position: relative;
      padding-top: 24px;
      margin-bottom: 20px; }
      .my-page .my-contents .dash-board .board-wrap {
        width: 100%;
        border: 3px solid #85a2ab;
        padding: 20px;
        border-radius: 10px; }
        .my-page .my-contents .dash-board .board-wrap:before {
          font-family: 'Font Awesome 5 Free';
          font-size: 12px;
          line-height: 15px;
          position: absolute;
          top: 0;
          left: 25px;
          height: 24px;
          padding: 5px 30px;
          content: '\f0a4  DASHBOARD';
          color: #fff;
          border-radius: 10px 10px 0 0;
          background: #85a2ab; }
        .my-page .my-contents .dash-board .board-wrap .group-title {
          width: 100%;
          margin-top: 40px;
          padding: 10px 30px 8px;
          color: #bda66a;
          display: flex; }
          .my-page .my-contents .dash-board .board-wrap .group-title .txt {
            font-size: 20px;
            line-height: 20px;
            font-weight: bold; }
          .my-page .my-contents .dash-board .board-wrap .group-title.first {
            margin-top: unset; }
        .my-page .my-contents .dash-board .board-wrap .one-info-100, .my-page .my-contents .dash-board .board-wrap .one-info-50 {
          padding: 10px 30px;
          display: flex;
          flex-wrap: nowrap;
          align-items: flex-start;
          justify-content: space-between; }
          @media screen and (max-width: 768px) {
            .my-page .my-contents .dash-board .board-wrap .one-info-100, .my-page .my-contents .dash-board .board-wrap .one-info-50 {
              padding: 10px 10px; } }
          @media screen and (max-width: 480px) {
            .my-page .my-contents .dash-board .board-wrap .one-info-100, .my-page .my-contents .dash-board .board-wrap .one-info-50 {
              padding: 10px 0; } }
          .my-page .my-contents .dash-board .board-wrap .one-info-100 .info-title, .my-page .my-contents .dash-board .board-wrap .one-info-50 .info-title {
            white-space: nowrap;
            line-height: initial;
            font-weight: bold; }
            .my-page .my-contents .dash-board .board-wrap .one-info-100 .info-title span, .my-page .my-contents .dash-board .board-wrap .one-info-50 .info-title span {
              padding-right: 7px; }
          .my-page .my-contents .dash-board .board-wrap .one-info-100 .info-contents, .my-page .my-contents .dash-board .board-wrap .one-info-50 .info-contents {
            padding-left: 20px; }
        .my-page .my-contents .dash-board .board-wrap .one-info-50 {
          width: 50%; }
          @media screen and (max-width: 980px) {
            .my-page .my-contents .dash-board .board-wrap .one-info-50 {
              width: 100%; } }
    .my-page .my-contents .table-wrap {
      overflow-x: auto;
      scrollbar-width: thin;
      scrollbar-color: #17585d #ccc; }
      .my-page .my-contents .table-wrap table td {
        line-height: 18px;
        text-overflow: ellipsis;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 1; }
        .my-page .my-contents .table-wrap table td img {
          width: 70px;
          height: 51px;
          object-fit: cover; }
        .my-page .my-contents .table-wrap table td .button {
          height: 2.0em;
          line-height: 2.0em; }

/*-------------------------------------------------------------------------------------------------
▼カテゴリー・サービス一覧
-------------------------------------------------------------------------------------------------*/
.category-service-control {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  position: sticky;
  top: 115px;
  background-color: #ffffff;
  margin-top: 20px;
  padding: 20px 0 10px;
  z-index: 2; }
  @media screen and (max-width: 768px) {
    .category-service-control {
      top: 55px;
      padding: 10px 0 10px; } }
  .category-service-control .genre {
    padding: 0 20px;
    font-size: 18px;
    line-height: 18px;
    font-weight: bold;
    color: #7d7d7d; }
    @media screen and (max-width: 480px) {
      .category-service-control .genre {
        padding: 0 10px; } }
  .category-service-control .breadcrumbs {
    padding: 0 20px; }
    @media screen and (max-width: 480px) {
      .category-service-control .breadcrumbs {
        padding: 0 10px; } }
  .category-service-control .control-contents {
    width: 100%;
    padding: 0 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative; }
    @media screen and (max-width: 768px) {
      .category-service-control .control-contents {
        flex-wrap: wrap; } }
    @media screen and (max-width: 480px) {
      .category-service-control .control-contents {
        padding: 0 10px; } }
    .category-service-control .control-contents .title {
      font-size: 26px;
      line-height: 26px;
      font-weight: bold;
      color: #917f7f; }
    .category-service-control .control-contents .control {
      margin-left: 10px;
      display: flex;
      flex-direction: row-reverse; }
      @media screen and (max-width: 768px) {
        .category-service-control .control-contents .control {
          width: 100%;
          margin-top: 10px;
          margin-left: unset; } }
      .category-service-control .control-contents .control select {
        height: 2.0em;
        width: unset;
        margin-left: 10px; }
        @media screen and (max-width: 768px) {
          .category-service-control .control-contents .control select {
            margin-left: 1px; } }
        @media screen and (max-width: 480px) {
          .category-service-control .control-contents .control select {
            max-width: 120px; } }
        @media screen and (max-width: 360px) {
          .category-service-control .control-contents .control select {
            max-width: 100px; } }
      .category-service-control .control-contents .control .btn {
        height: 2.0em;
        padding: 0 10px;
        display: flex;
        justify-content: center;
        align-items: center;
        border: 1px solid #dddddd;
        border-radius: 6px;
        cursor: pointer;
        white-space: nowrap;
        margin-left: 10px; }
        @media screen and (max-width: 768px) {
          .category-service-control .control-contents .control .btn {
            margin-left: 1px; } }
        .category-service-control .control-contents .control .btn.active {
          color: #ffffff;
          background-color: #666666;
          border: 1px solid #666666; }
      .category-service-control .control-contents .control .btn:hover, .category-service-control .control-contents .control select:hover {
        border: 1px solid #666666; }
      .category-service-control .control-contents .control .btn:focus, .category-service-control .control-contents .control select:focus {
        box-shadow: 0 0 0 1px #666666;
        border-color: #666666; }
    .category-service-control .control-contents .condition-box {
      width: calc(100% - 40px);
      max-width: 1000px;
      height: calc(100vh - 130px);
      max-height: 600px;
      padding: 20px;
      border: 7px solid #d9d9d9;
      background-color: #ffffff;
      position: absolute;
      right: 20px;
      top: calc(2.0em + 5px);
      display: none;
      flex-wrap: wrap;
      overflow-y: auto;
      box-shadow: 2px 2px 5px -2px #737373;
      border-radius: 10px 0 0 10px;
      z-index: 1; }
      .category-service-control .control-contents .condition-box.active {
        display: flex; }
      @media screen and (max-width: 980px) {
        .category-service-control .control-contents .condition-box {
          width: calc(100% - 40px);
          padding: 20px 15px; } }
      @media screen and (max-width: 768px) {
        .category-service-control .control-contents .condition-box {
          width: calc(100% - 20px);
          height: calc(100svh - 180px);
          top: calc(2.0em + 40px);
          right: 10px;
          padding: 20px 15px; } }
    .category-service-control .control-contents .condition-box::-webkit-scrollbar {
      width: 7px; }
    .category-service-control .control-contents .condition-box::-webkit-scrollbar-track {
      background-color: #ccc; }
    .category-service-control .control-contents .condition-box::-webkit-scrollbar-thumb {
      background-color: #db8403; }
    .category-service-control .control-contents .category-list .main-cate-line {
      width: 100%;
      margin: 20px 0 10px;
      display: flex; }
      .category-service-control .control-contents .category-list .main-cate-line .main-cate {
        padding: 7px 20px 5px;
        font-weight: bold;
        font-size: 20px;
        line-height: 20px;
        color: #004565;
        border: 1px solid #eaeaea;
        border-radius: 5px;
        cursor: pointer; }
        .category-service-control .control-contents .category-list .main-cate-line .main-cate:hover {
          color: #ffffff;
          background-color: #666666; }
        .category-service-control .control-contents .category-list .main-cate-line .main-cate.selected {
          color: #ffffff;
          background-color: #607d8b; }
      .category-service-control .control-contents .category-list .main-cate-line.first {
        margin: 0 0 5px; }
    .category-service-control .control-contents .category-list .sub-cate-line {
      width: 100%;
      margin-bottom: 10px;
      display: flex; }
      .category-service-control .control-contents .category-list .sub-cate-line .sub-cate {
        padding: 6px 20px 4px;
        font-weight: bold;
        font-size: 16px;
        line-height: 16px;
        border: 1px solid #eaeaea;
        border-radius: 5px;
        cursor: pointer; }
        .category-service-control .control-contents .category-list .sub-cate-line .sub-cate:hover {
          color: #ffffff;
          background-color: #666666; }
        .category-service-control .control-contents .category-list .sub-cate-line .sub-cate.selected {
          color: #ffffff;
          background-color: #607d8b; }
    .category-service-control .control-contents .category-list .service {
      padding: 2px 15px;
      border: 1px solid #c1c1c1;
      margin: 0 10px 10px 0;
      border-radius: 15px;
      font-size: 14px;
      min-width: 70px;
      text-align: center;
      cursor: pointer; }
      .category-service-control .control-contents .category-list .service:hover {
        color: #ffffff;
        background-color: #666666; }
      .category-service-control .control-contents .category-list .service.selected {
        color: #ffffff;
        background-color: #607d8b; }
    .category-service-control .control-contents .option-list {
      width: 400px;
      height: unset;
      display: none;
      flex-wrap: wrap;
      padding: 25px 20px; }
      @media screen and (max-width: 480px) {
        .category-service-control .control-contents .option-list {
          width: calc(100% - 20px);
          height: unset; } }
      .category-service-control .control-contents .option-list .one-option {
        width: 100%;
        margin-bottom: 10px;
        display: flex;
        align-items: center; }
        .category-service-control .control-contents .option-list .one-option .option-title {
          width: 60px; }
        .category-service-control .control-contents .option-list .one-option .option-contents {
          width: calc(100% - 60px); }
          .category-service-control .control-contents .option-list .one-option .option-contents input[type='text'], .category-service-control .control-contents .option-list .one-option .option-contents select {
            height: 2.0em; }
      .category-service-control .control-contents .option-list .command {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        margin-top: 10px; }
        .category-service-control .control-contents .option-list .command .btn {
          padding: 10px 30px 8px;
          color: #ffffff;
          background-color: #666666;
          border-radius: 10px;
          font-size: 16px;
          line-height: 14px;
          cursor: pointer; }
          .category-service-control .control-contents .option-list .command .btn:hover {
            background-color: #ff9800; }
          .category-service-control .control-contents .option-list .command .btn:active {
            margin: 1px -1px -1px 1px; }
  .category-service-control .selected-condition {
    width: 100%;
    margin-top: 5px;
    padding: 0 20px; }
    .category-service-control .selected-condition .conditions {
      padding: 4px 0;
      display: flex;
      justify-content: flex-end;
      margin-bottom: -5px; }
      .category-service-control .selected-condition .conditions .one {
        padding: 5px 35px 4px 15px;
        color: #393939;
        background-color: #ebebeb;
        border-radius: 11px;
        font-size: 12px;
        line-height: 12px;
        position: relative;
        margin-left: 10px;
        cursor: pointer; }
        .category-service-control .selected-condition .conditions .one:before {
          content: 'x';
          position: absolute;
          right: 12px;
          top: 3px;
          width: 14px;
          height: 14px;
          color: #ffffff;
          background-color: #444444;
          display: flex;
          align-items: center;
          justify-content: center;
          border-radius: 50%;
          font-size: 10px;
          line-height: 10px; }
        .category-service-control .selected-condition .conditions .one:hover {
          background-color: #d7d7d7; }

.category-service {
  width: 100%;
  display: flex;
  padding: 0 10px; }
  @media screen and (max-width: 980px) {
    .category-service {
      flex-wrap: wrap; } }
  @media screen and (max-width: 480px) {
    .category-service {
      padding: 0; } }
  .category-service .categories {
    display: flex;
    flex-direction: column;
    position: sticky;
    height: fit-content;
    top: 180px;
    width: 160px;
    overflow-y: auto;
    max-height: calc(100vh - 250px);
    scrollbar-width: none; }
    @media screen and (max-width: 980px) {
      .category-service .categories {
        display: none; } }
    .category-service .categories .category-section {
      padding-top: 25px;
      margin-top: 15px;
      border-top: 1px solid #ebebeb; }
      .category-service .categories .category-section:first-child {
        padding-top: unset;
        margin-top: unset;
        border-top: unset; }
    .category-service .categories .genre {
      width: 100%;
      font-weight: bold;
      font-size: 22px;
      line-height: 24px;
      margin: 7px 0 30px;
      color: #768954;
      cursor: pointer; }
      .category-service .categories .genre:hover {
        color: #119dc7; }
      .category-service .categories .genre.selected {
        color: #ff9800;
        font-weight: bold; }
    .category-service .categories .main-cate {
      width: 100%;
      font-weight: bold;
      font-size: 22px;
      line-height: 24px;
      margin: 7px 0 20px;
      cursor: pointer; }
      .category-service .categories .main-cate:hover {
        color: #119dc7; }
      .category-service .categories .main-cate.selected {
        color: #ff9800;
        font-weight: bold; }
    .category-service .categories .sub-cate {
      width: 100%;
      font-size: 16px;
      font-weight: bold;
      margin: 20px 0 3px;
      cursor: pointer; }
      .category-service .categories .sub-cate:hover {
        color: #119dc7; }
      .category-service .categories .sub-cate.first {
        margin-top: 0; }
      .category-service .categories .sub-cate.selected {
        color: #ff9800;
        font-weight: bold; }
    .category-service .categories .service {
      width: 100%;
      font-size: 14px;
      cursor: pointer;
      margin-bottom: 3px; }
      .category-service .categories .service:hover {
        color: #119dc7; }
      .category-service .categories .service.selected {
        color: #ff9800;
        font-weight: bold; }
  .category-service .contents {
    width: calc(100% - 160px);
    display: flex;
    flex-wrap: wrap;
    align-content: flex-start;
    padding: 1px 1px 1px 20px; }
    @media screen and (max-width: 980px) {
      .category-service .contents {
        width: 100%;
        padding-left: unset; } }
    .category-service .contents .section-title {
      width: 100%;
      display: flex;
      justify-content: space-between;
      align-items: center; }
      .category-service .contents .section-title .txt {
        font-size: 22px;
        font-weight: bold; }
      .category-service .contents .section-title .counter {
        display: flex;
        align-items: center; }
        .category-service .contents .section-title .counter .main {
          margin: 0 10px;
          font-size: 22px;
          font-weight: bold;
          color: #ff9800; }
        .category-service .contents .section-title .counter .sub {
          font-size: 14px; }
    .category-service .contents .services {
      display: flex;
      flex-wrap: wrap; }
    .category-service .contents.community-contents {
      padding: 0 20px 0 100px; }
      @media screen and (max-width: 980px) {
        .category-service .contents.community-contents {
          padding: 0; } }
      .category-service .contents.community-contents .section-title .txt {
        font-size: 26px; }

/*-------------------------------------------------------------------------------------------------
▼カテゴリー・サービス一覧（POPUP用）
-------------------------------------------------------------------------------------------------*/
.category-service-popup {
  width: 100%;
  display: flex;
  padding: 20px; }
  @media screen and (max-width: 768px) {
    .category-service-popup {
      padding: 10px;
      flex-wrap: wrap; } }
  .category-service-popup .category {
    display: flex;
    flex-direction: column;
    position: sticky;
    height: fit-content;
    top: 25px;
    width: 200px; }
    @media screen and (max-width: 768px) {
      .category-service-popup .category {
        display: none; } }
    .category-service-popup .category .cate-item {
      width: 100%;
      height: 40px;
      padding: 0 10px;
      background-color: #f7f7f7;
      margin-bottom: 3px;
      display: flex;
      align-items: center;
      font-size: 16px;
      line-height: 16px;
      cursor: pointer; }
      .category-service-popup .category .cate-item.selected {
        color: #ffffff;
        background-color: #6b6b6b; }
      .category-service-popup .category .cate-item:hover {
        opacity: 0.8; }
  .category-service-popup .services {
    padding-left: 20px;
    width: calc(100% - 200px);
    display: none;
    flex-wrap: wrap;
    align-content: flex-start; }
    @media screen and (max-width: 768px) {
      .category-service-popup .services {
        width: 100%;
        display: flex;
        padding-left: unset;
        margin-top: 50px; }
        .category-service-popup .services.first {
          margin-top: 0; } }
    .category-service-popup .services.active {
      display: flex; }
    .category-service-popup .services .pos {
      margin-top: -25px;
      padding-top: 25px; }
    .category-service-popup .services .main-cate {
      display: block;
      width: 100%;
      color: #ffffff;
      background-color: #5f7166;
      font-size: 20px;
      line-height: 20px;
      font-weight: bold;
      padding: 10px 20px;
      position: relative;
      overflow: hidden; }
      .category-service-popup .services .main-cate:before {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        border-width: 0 16px 16px 0;
        border-style: solid;
        border-color: #fff #fff #8da597 #8da597;
        display: block;
        width: 0;
        -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3), -1px 1px 1px rgba(0, 0, 0, 0.2);
        -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3), -1px 1px 1px rgba(0, 0, 0, 0.2);
        box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3), -1px 1px 1px rgba(0, 0, 0, 0.2); }
    .category-service-popup .services .sub-cate {
      width: 100%;
      color: #71665f;
      font-size: 18px;
      font-weight: bold;
      margin: 30px 0 5px; }
      .category-service-popup .services .sub-cate.first {
        margin: 10px 0 5px; }
    .category-service-popup .services .service {
      width: 33%;
      display: flex; }
      @media screen and (max-width: 980px) {
        .category-service-popup .services .service {
          width: 50%; } }
      @media screen and (max-width: 360px) {
        .category-service-popup .services .service {
          width: 100%; } }
      .category-service-popup .services .service label {
        white-space: nowrap; }

/*-------------------------------------------------------------------------------------------------
▼カテゴリー・サービス一覧２（POPUP用）
-------------------------------------------------------------------------------------------------*/
.category-service-popup2 {
  width: 100%;
  display: flex;
  padding: 10px; }
  .category-service-popup2 .accordion-category {
    width: 100%;
    display: flex;
    flex-direction: column;
    position: sticky;
    height: fit-content;
    top: 25px; }
    .category-service-popup2 .accordion-category .accordion-main-cate, .category-service-popup2 .accordion-category .accordion-sub-cate, .category-service-popup2 .accordion-category .accordion-service {
      width: 100%;
      height: 40px;
      align-items: center;
      font-size: 16px;
      line-height: 16px;
      margin-bottom: 3px;
      cursor: pointer; }
    .category-service-popup2 .accordion-category .accordion-main-cate:before, .category-service-popup2 .accordion-category .accordion-sub-cate:before {
      font-family: 'Font Awesome 5 Free';
      font-size: 18px;
      font-weight: bold;
      line-height: 18px;
      position: absolute;
      right: 10px; }
    .category-service-popup2 .accordion-category .accordion-main-cate:hover, .category-service-popup2 .accordion-category .accordion-sub-cate:hover {
      opacity: 0.8; }
    .category-service-popup2 .accordion-category .accordion-main-cate {
      display: flex;
      padding: 0 10px;
      background-color: #ebebeb; }
      .category-service-popup2 .accordion-category .accordion-main-cate:before {
        content: '\f078';
        color: #838383; }
    .category-service-popup2 .accordion-category .accordion-sub-cate {
      display: none;
      padding: 0 10px 0 50px;
      background-color: #f7f7f7; }
      .category-service-popup2 .accordion-category .accordion-sub-cate:before {
        content: '\f078';
        color: #a1a1a1; }
    .category-service-popup2 .accordion-category .accordion-service {
      display: none;
      padding: 0 10px 0 90px;
      background-color: #fffcf4; }
      .category-service-popup2 .accordion-category .accordion-service:hover {
        color: #ffffff;
        background-color: #958a6d; }

/*-------------------------------------------------------------------------------------------------
▼画像付きアイテムの横スクロール一覧
-------------------------------------------------------------------------------------------------*/
.image-item-scroll-list {
  width: 100%;
  position: relative; }
  .image-item-scroll-list .scroll-wrap {
    width: 100%;
    height: 100%;
    overflow-x: scroll;
    overflow-y: hidden;
    display: flex;
    justify-content: flex-start;
    flex-wrap: nowrap;
    -ms-overflow-style: none;
    scrollbar-width: none; }
    .image-item-scroll-list .scroll-wrap .service-item, .image-item-scroll-list .scroll-wrap .sp-item {
      margin: 5px 0.5% 5px 0;
      overflow: unset;
      width: unset; }
      @media screen and (max-width: 980px) {
        .image-item-scroll-list .scroll-wrap .service-item, .image-item-scroll-list .scroll-wrap .sp-item {
          width: unset;
          margin: unset; } }
      @media screen and (max-width: 768px) {
        .image-item-scroll-list .scroll-wrap .service-item, .image-item-scroll-list .scroll-wrap .sp-item {
          width: unset;
          margin: unset; } }
      @media screen and (max-width: 480px) {
        .image-item-scroll-list .scroll-wrap .service-item, .image-item-scroll-list .scroll-wrap .sp-item {
          width: unset;
          margin: unset; } }
      .image-item-scroll-list .scroll-wrap .service-item .image, .image-item-scroll-list .scroll-wrap .sp-item .image {
        width: 250px;
        height: 180px;
        border-radius: 10px 10px 0 0; }
      .image-item-scroll-list .scroll-wrap .service-item .contents, .image-item-scroll-list .scroll-wrap .sp-item .contents {
        width: 250px; }
    .image-item-scroll-list .scroll-wrap .sp-item .image {
      height: 110px; }
  .image-item-scroll-list .scroller-arrow {
    width: 40px;
    height: 40px;
    position: absolute;
    background-color: #ffffffed;
    border: 1px solid #f1f1f1;
    top: calc(50% - 60px);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 26px;
    color: #c1c1c1;
    cursor: pointer; }
    @media screen and (max-width: 768px) {
      .image-item-scroll-list .scroller-arrow {
        display: none; } }
    .image-item-scroll-list .scroller-arrow.arrow-left {
      display: none;
      left: -18px;
      right: unset; }
    .image-item-scroll-list .scroller-arrow.arrow-right {
      left: unset;
      right: -18px; }
    .image-item-scroll-list .scroller-arrow:hover {
      color: #ffffff;
      background-color: #ffecb4;
      border: 1px solid #ffecb4; }
    .image-item-scroll-list .scroller-arrow:active {
      margin: 1px -1px -1px 1px; }

/*-------------------------------------------------------------------------------------------------
▼画像付きアイテム一覧
-------------------------------------------------------------------------------------------------*/
.image-item-list {
  width: 100%;
  display: flex;
  flex-wrap: wrap; }

/*-------------------------------------------------------------------------------------------------
▼サービスアイテム（「image-item-list」、「image-item-scroll-list」の中のコンテンツ）
-------------------------------------------------------------------------------------------------*/
.service-item {
  display: flex;
  flex-direction: column;
  border: 1px solid #e7e7e7;
  border-radius: 10px;
  position: relative;
  overflow: hidden;
  width: 24.5%;
  margin: 5px 0.25%; }
  @media screen and (max-width: 980px) {
    .service-item {
      width: 32.8%;
      margin: 5px 0.26%; } }
  @media screen and (max-width: 768px) {
    .service-item {
      width: 49.0%;
      margin: 5px 0.50%; } }
  @media screen and (max-width: 480px) {
    .service-item {
      width: 100.0%;
      margin: 5px 0%; } }
  .service-item:hover {
    opacity: 1;
    border: 1px solid #ffc979; }
    .service-item:hover .image img {
      transform: scale(1.03, 1.03);
      transition: 1s all; }
  .service-item .favorite {
    position: absolute;
    right: 26px;
    bottom: 28px; }
    .service-item .favorite:before {
      font-family: 'Font Awesome 5 Free';
      content: '\f004';
      font-size: 18px;
      line-height: 18px;
      position: absolute;
      font-weight: bold;
      color: #e91e63; }
  .service-item .image {
    width: 100%;
    height: 190px;
    border-bottom: 1px solid #efefef;
    overflow: hidden; }
    .service-item .image img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
  .service-item .contents {
    width: 100%;
    padding: 5px 10px 10px;
    pointer-events: none;
    display: flex;
    flex-direction: column;
    position: relative; }
    .service-item .contents .txt, .service-item .contents .price, .service-item .contents .profile, .service-item .contents .category {
      color: #444444;
      font-size: 14px;
      line-height: 18px; }
    .service-item .contents .txt {
      height: 36px;
      margin-top: 5px;
      text-overflow: ellipsis;
      overflow: hidden;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 2; }
    .service-item .contents .profile {
      margin-top: 5px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      width: 100%; }
      .service-item .contents .profile .user {
        display: flex;
        align-items: center;
        font-size: 14px; }
        .service-item .contents .profile .user .photo {
          width: 20px;
          height: 20px;
          margin-right: 5px; }
          .service-item .contents .profile .user .photo img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            border-radius: 50%; }
        .service-item .contents .profile .user .name {
          text-overflow: ellipsis;
          overflow: hidden;
          display: -webkit-box;
          -webkit-box-orient: vertical;
          -webkit-line-clamp: 1; }
      .service-item .contents .profile .rate {
        white-space: nowrap; }
        .service-item .contents .profile .rate:before {
          padding-right: 4px;
          color: #ff9800; }
    .service-item .contents .category {
      margin-top: 5px;
      display: flex;
      width: 100%;
      text-overflow: ellipsis;
      overflow: hidden;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 1;
      color: #9d7c5a;
      font-weight: normal; }
      .service-item .contents .category:before {
        font-weight: bold;
        padding-right: 7px; }
    .service-item .contents .price {
      color: #656565;
      font-size: 16px;
      font-weight: bold;
      margin-top: 10px; }

/*-------------------------------------------------------------------------------------------------
▼サービスアイテム（「image-item-list」、「image-item-scroll-list」の中のコンテンツ）
-------------------------------------------------------------------------------------------------*/
.sp-item {
  display: flex;
  flex-direction: column;
  border: 1px solid #e7e7e7;
  border-radius: 10px;
  position: relative;
  overflow: hidden;
  width: 24.5%;
  margin: 5px 0.25%; }
  @media screen and (max-width: 980px) {
    .sp-item {
      width: 32.8%;
      margin: 5px 0.26%; } }
  @media screen and (max-width: 768px) {
    .sp-item {
      width: 49.0%;
      margin: 5px 0.50%; } }
  @media screen and (max-width: 480px) {
    .sp-item {
      width: 100.0%;
      margin: 5px 0%; } }
  .sp-item:hover {
    opacity: 1;
    border: 1px solid #ffc979; }
    .sp-item:hover .image img {
      transform: scale(1.03, 1.03);
      transition: 1s all; }
  .sp-item .bookmark {
    position: absolute;
    right: 26px;
    bottom: 28px; }
    .sp-item .bookmark:before {
      font-family: 'Font Awesome 5 Free';
      content: '\f02e';
      font-size: 18px;
      line-height: 18px;
      position: absolute;
      font-weight: bold;
      color: #ffc108; }
  .sp-item .image {
    width: 100%;
    height: 120px;
    border-bottom: 1px solid #efefef;
    overflow: hidden;
    margin-bottom: 45px; }
    .sp-item .image img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
  .sp-item .contents {
    width: 100%;
    padding: 5px 10px 10px;
    pointer-events: none;
    display: flex;
    flex-direction: column;
    position: relative; }
    .sp-item .contents .big-photo {
      width: 90px;
      height: 90px;
      position: absolute;
      left: 17px;
      top: -90px; }
      .sp-item .contents .big-photo img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 50%;
        border: 3px solid #ffffff; }
    .sp-item .contents .profile {
      position: absolute;
      right: 17px;
      top: -37px;
      display: flex;
      flex-direction: column;
      width: 126px; }
      .sp-item .contents .profile .name {
        text-align: right;
        font-size: 15px;
        font-weight: bold;
        text-overflow: ellipsis;
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 1; }
      .sp-item .contents .profile .profession {
        text-align: right;
        font-size: 13px;
        text-overflow: ellipsis;
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 1; }
    .sp-item .contents .profile, .sp-item .contents .txt, .sp-item .contents .summary, .sp-item .contents .category, .sp-item .contents .rate {
      color: #444444;
      font-size: 14px;
      line-height: 18px; }
    .sp-item .contents .txt {
      height: 36px;
      margin-top: 5px;
      text-overflow: ellipsis;
      overflow: hidden;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 2; }
    .sp-item .contents .summary {
      width: 100%;
      margin-top: 5px; }
      .sp-item .contents .summary .one-summary {
        width: 100%; }
    .sp-item .contents .rate {
      white-space: nowrap; }
      .sp-item .contents .rate:before {
        padding-right: 4px;
        color: #ff9800; }
    .sp-item .contents .category {
      margin-top: 5px;
      display: flex;
      width: 100%;
      text-overflow: ellipsis;
      overflow: hidden;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 1;
      color: #9d7c5a;
      font-weight: normal; }
      .sp-item .contents .category:before {
        font-weight: bold;
        padding-right: 7px; }

/*-------------------------------------------------------------------------------------------------
▼ お知らせ用の枠
-------------------------------------------------------------------------------------------------*/
.inform {
  width: 100%;
  min-height: calc(100% - 90px);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 50px 50px 80px;
  /*
      &:before {
          content: '';
          position: absolute;
          left: 0;
          bottom: 0;
          background-image: url(images/wave_gray2.svg);
          background-repeat: no-repeat;
          width: 100%;
          height: 30%;
          transform: rotate(180deg);
          opacity: 1;
          z-index: -1;
  
          @include breakpoint('<=small') {
              left: -50%;
              width: 150%;
              height: 20%;
          }
      }
  */ }
  @media screen and (max-width: 768px) {
    .inform {
      min-height: calc(100% - 45px);
      padding: 10% 5% 15%; } }
  .inform .nopage {
    padding: 50px;
    background-color: #7c898f;
    border: 10px solid #373b3d;
    border-radius: 20px; }
    @media screen and (max-width: 768px) {
      .inform .nopage {
        padding: 10% 5%; } }
    .inform .nopage .message {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-direction: column;
      font-size: 1.8em;
      text-align: center; }
      .inform .nopage .message .ico {
        color: #ffbf00;
        font-size: 50px; }
        @media screen and (max-width: 768px) {
          .inform .nopage .message .ico {
            font-size: 40px; } }
      .inform .nopage .message .txt {
        color: #ffffff;
        font-size: 30px; }
        @media screen and (max-width: 768px) {
          .inform .nopage .message .txt {
            font-size: 20px; } }

/*-------------------------------------------------------------------------------------------------
▼ ガイド
-------------------------------------------------------------------------------------------------*/
.guide {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 20px; }
  .guide .message {
    width: 100%;
    padding: 20px 30px;
    position: relative;
    background-color: #e7e2d370;
    overflow: hidden;
    border-radius: 7px 0 7px 7px; }
    @media screen and (max-width: 768px) {
      .guide .message {
        padding: 20px 20px; } }
    .guide .message:before {
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      border-width: 0 16px 16px 0;
      border-style: solid;
      border-color: #fff #fff #c9c3b0 #c9c3b0;
      display: block;
      width: 0;
      -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3), -1px 1px 1px rgba(0, 0, 0, 0.2);
      -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3), -1px 1px 1px rgba(0, 0, 0, 0.2);
      box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3), -1px 1px 1px rgba(0, 0, 0, 0.2); }
    .guide .message .title {
      width: 100%;
      font-size: 28px;
      line-height: 30px;
      font-weight: bold;
      color: #8b886f;
      display: flex;
      align-items: center; }
      .guide .message .title .ico {
        font-size: 40px;
        padding: 0 10px 4px 0; }
    .guide .message .contents {
      width: 100%;
      margin-top: 10px;
      color: #3b3b3b;
      font-size: 16px; }
    .guide .message .alert {
      width: 100%;
      margin-top: 10px;
      color: #b16a6a;
      font-size: 14px; }
    .guide .message .control {
      width: 100%;
      margin-top: 20px;
      display: flex;
      justify-content: center; }
      .guide .message .control .button {
        margin: 0 10px; }
    .guide .message.warn {
      background-color: #e5cccc70; }
      .guide .message.warn:before {
        border-color: #fff #fff #ddbbbb #ddbbbb; }
      .guide .message.warn .title {
        color: #a74942; }
      .guide .message.warn .contents {
        color: #652121; }
      .guide .message.warn .control .button {
        color: #ffffff;
        background: #673131;
        box-shadow: none; }
        .guide .message.warn .control .button:hover {
          opacity: 0.8; }
    .guide .message.white {
      background-color: #ffffff; }
      .guide .message.white:before {
        display: none; }
      .guide .message.white .title {
        color: #474747; }
      .guide .message.white .contents {
        color: #373737; }

/*-------------------------------------------------------------------------------------------------
▼ アクセントボード
-------------------------------------------------------------------------------------------------*/
.accent-board {
  width: 100%;
  margin: 0 0 20px;
  position: relative;
  display: flex;
  flex-direction: column;
  padding-top: 24px; }
  .accent-board .board-wrap .bd-title {
    padding: 10px 20px 7px 27px;
    text-align: left;
    color: #ffffff;
    border-radius: 0 10px 0 0;
    background: #119dc7;
    font-size: 24px;
    line-height: 24px; }
  .accent-board .board-wrap .bd-message {
    padding: 15px  25px;
    text-align: left;
    color: #474747;
    border-radius: 0 0 10px 10px;
    background: #ffffff;
    font-size: 18px;
    line-height: 20px;
    border-left: 3px solid #119dc7;
    border-right: 3px solid #119dc7;
    border-bottom: 3px solid #119dc7; }
    .accent-board .board-wrap .bd-message .control {
      width: 100%;
      margin-top: 20px;
      display: flex;
      justify-content: center; }
      .accent-board .board-wrap .bd-message .control .button {
        margin: 0 10px; }
  .accent-board .board-wrap:before {
    font-family: 'Font Awesome 5 Free';
    font-size: 12px;
    line-height: 15px;
    position: absolute;
    top: 0;
    left: 0;
    height: 24px;
    padding: 5px 30px;
    content: '\f0a4  INFORMATION';
    color: #fff;
    border-radius: 10px 10px 0 0;
    background: #119dc7; }

/*-------------------------------------------------------------------------------------------------
▼ プロセスボード
-------------------------------------------------------------------------------------------------*/
.process-board {
  width: 100%;
  margin: 0 0 20px;
  position: relative;
  display: flex;
  flex-direction: column;
  padding-top: 24px; }
  .process-board .board-wrap .bd-title {
    padding: 10px 20px 7px 27px;
    text-align: left;
    color: #ffffff;
    border-radius: 0 10px 0 0;
    background: #556b52;
    font-size: 24px;
    line-height: 24px; }
  .process-board .board-wrap .bd-contents {
    padding: 15px  25px;
    border-radius: 0 0 10px 10px;
    background: #ffffff;
    font-size: 18px;
    line-height: 20px;
    border-left: 3px solid #556b52;
    border-right: 3px solid #556b52;
    border-bottom: 3px solid #556b52; }
    .process-board .board-wrap .bd-contents .one-process {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: space-between;
      border-bottom: 1px solid #eaeaea;
      padding: 10px 0; }
      @media screen and (max-width: 980px) {
        .process-board .board-wrap .bd-contents .one-process {
          flex-direction: column; } }
      .process-board .board-wrap .bd-contents .one-process:last-child {
        border-bottom: unset; }
      .process-board .board-wrap .bd-contents .one-process .contents {
        display: flex;
        align-items: center; }
        .process-board .board-wrap .bd-contents .one-process .contents .number {
          font-size: 38px;
          font-weight: bold;
          color: #556b52;
          padding-right: 10px; }
        .process-board .board-wrap .bd-contents .one-process .contents .message {
          text-align: left;
          color: #474747; }
          .process-board .board-wrap .bd-contents .one-process .contents .message .tip {
            width: 100%;
            font-size: 14px; }
      .process-board .board-wrap .bd-contents .one-process .control {
        display: flex;
        justify-content: center; }
        .process-board .board-wrap .bd-contents .one-process .control .button {
          margin: 0 0 0 10px;
          width: 250px; }
          @media screen and (max-width: 980px) {
            .process-board .board-wrap .bd-contents .one-process .control .button {
              margin: 10px 0 0 0; } }
  .process-board .board-wrap:before {
    font-family: 'Font Awesome 5 Free';
    font-size: 12px;
    line-height: 15px;
    position: absolute;
    top: 0;
    left: 0;
    height: 24px;
    padding: 5px 30px;
    content: '\f0a4  GUIDE';
    color: #fff;
    border-radius: 10px 10px 0 0;
    background: #556b52; }

/*-------------------------------------------------------------------------------------------------
▼ regist-select
-------------------------------------------------------------------------------------------------*/
.regist-select {
  width: 100%;
  display: flex;
  justify-content: center; }
  .regist-select .regist-select-area {
    margin-top: 30px;
    border: 1px solid #ebebeb;
    background-color: #fbfbfb; }
    .regist-select .regist-select-area .title-area {
      width: 100%;
      color: #303030;
      background-color: #f1f1f1;
      font-size: 24px;
      font-weight: bold;
      padding: 20px 5px;
      text-align: center; }
      @media screen and (max-width: 980px) {
        .regist-select .regist-select-area .title-area {
          font-size: 22px; } }
      @media screen and (max-width: 768px) {
        .regist-select .regist-select-area .title-area {
          font-size: 18px; } }
    .regist-select .regist-select-area .contents-area {
      width: 1000px;
      padding: 20px;
      display: flex;
      justify-content: space-around;
      flex-wrap: wrap; }
      @media screen and (max-width: 980px) {
        .regist-select .regist-select-area .contents-area {
          padding: 15px; } }
      @media screen and (max-width: 768px) {
        .regist-select .regist-select-area .contents-area {
          width: 100%;
          padding: 10px; } }
      .regist-select .regist-select-area .contents-area .area-block {
        margin: 20px;
        padding: 20px 20px;
        width: calc(50% - 40px);
        border: 3px solid #545454;
        border-radius: 5px; }
        @media screen and (max-width: 980px) {
          .regist-select .regist-select-area .contents-area .area-block {
            width: 100%;
            margin: 20px 10px;
            padding: 20px 10px; } }
        .regist-select .regist-select-area .contents-area .area-block .item {
          height: 65px;
          color: #ffffff;
          background-color: #bb4242;
          border: 2px solid #bb4242;
          margin-bottom: 20px;
          display: flex;
          align-items: center;
          justify-content: center;
          position: relative;
          cursor: pointer; }
          .regist-select .regist-select-area .contents-area .area-block .item:hover {
            color: #ffffff;
            background-color: #e75555;
            border: 2px solid #bb4242; }
          .regist-select .regist-select-area .contents-area .area-block .item img {
            width: 38px;
            height: auto;
            object-fit: contain; }
          .regist-select .regist-select-area .contents-area .area-block .item .ico {
            font-size: 30px;
            padding-bottom: 2px; }
          .regist-select .regist-select-area .contents-area .area-block .item .txt {
            font-weight: bold;
            font-size: 22px;
            line-height: 22px;
            padding-left: 20px; }
            @media screen and (max-width: 980px) {
              .regist-select .regist-select-area .contents-area .area-block .item .txt {
                font-size: 18px;
                line-height: 18px;
                padding-left: 5px; } }
          .regist-select .regist-select-area .contents-area .area-block .item .option {
            position: absolute;
            font-size: 12px;
            color: #ffffff;
            text-align: center;
            bottom: 4px; }
          .regist-select .regist-select-area .contents-area .area-block .item:last-child {
            margin-bottom: 0; }
        .regist-select .regist-select-area .contents-area .area-block .item-line {
          background-color: #22b754;
          border: 2px solid #22b754; }
          .regist-select .regist-select-area .contents-area .area-block .item-line:hover {
            background-color: #219147;
            border: 2px solid #22b754; }
        .regist-select .regist-select-area .contents-area .area-block .item-google {
          color: #4c4c4c;
          background-color: #ffffff;
          border: 2px solid #7e7e7e; }
          .regist-select .regist-select-area .contents-area .area-block .item-google:hover {
            color: #4c4c4c;
            background-color: #fffbd5;
            border: 2px solid #646464; }

.regist {
  padding: 30px 30px;
  display: flex;
  justify-content: center; }
  @media screen and (max-width: 768px) {
    .regist {
      padding: 20px 10px; } }
  .regist .regist-form {
    max-width: 1000px;
    padding: 40px;
    border: 3px solid #6a7b0c5e;
    border-radius: 5px; }
    @media screen and (max-width: 768px) {
      .regist .regist-form {
        padding: 20px; } }

/*-------------------------------------------------------------------------------------------------
▼ ログインフォーム
-------------------------------------------------------------------------------------------------*/
.login-form {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow-y: auto;
  padding: 30px 0; }
  .login-form .login {
    padding: 20px;
    border-radius: 20px;
    border: 3px solid #5e686c;
    width: 450px;
    height: fit-content;
    z-index: 1;
        /*
        .description {
            width: 100%;
            border: 1px solid #a9ab9c;
            padding: 15px;
            border-radius: 10px;
            background-color: #fdfff0;
            margin: 20px 0 30px;

            .main {
                font-size: 1em;
            }
            .sub {
                font-size: 0.8em;
                line-height: 1.4em;
                color: #776e5d;
                margin-top: 10px;
            }
        }

        .must {
            color: #e56b6b;
            margin-left: 8px;
            font-size: 1em;
        }
        */ }
    @media screen and (max-width: 1280px) {
      .login-form .login {
        width: 420px;
        border-radius: 15px; } }
    @media screen and (max-width: 768px) {
      .login-form .login {
        width: 400px;
        border-radius: 10px; } }
    @media screen and (max-width: 480px) {
      .login-form .login {
        width: 92%;
        border-radius: 10px; } }
    .login-form .login .symbol {
      width: 100%;
      font-size: 6em;
      text-align: center; }
    .login-form .login .symbol-txt {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: center; }
      .login-form .login .symbol-txt .symbol {
        width: auto;
        font-size: 4em; }
      .login-form .login .symbol-txt .txt {
        margin-left: 10px;
        font-size: 2em; }
    .login-form .login .option {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-wrap: wrap;
      margin-top: 20px;
      padding-top: 20px;
      border-top: 1px solid #d5d9b7; }
      .login-form .login .option a {
        margin: 5px 10px; }
    .login-form .login .extra-login {
      width: 100%;
      display: inline-block;
      padding: 20px 30px 0;
      margin-top: 20px;
      border-top: 1px solid #d5d9b7; }
      .login-form .login .extra-login .item {
        height: 50px;
        color: #ffffff;
        background-color: #bb4242;
        border: 2px solid #bb4242;
        margin-bottom: 20px;
        display: flex;
        align-items: center;
        justify-content: center;
        position: relative;
        cursor: pointer;
        /*
        .ico {
            font-size: 30px;
            padding-bottom: 2px;
        }
        */
        /*
        .option {
            position: absolute;
            font-size: 12px;
            color: #ffffff;
            text-align: center;
            bottom: 4px;
        }
        */ }
        .login-form .login .extra-login .item:hover {
          color: #ffffff;
          background-color: #e75555;
          border: 2px solid #bb4242; }
        .login-form .login .extra-login .item img {
          width: 38px;
          height: auto;
          object-fit: contain; }
        .login-form .login .extra-login .item .txt {
          font-weight: bold;
          font-size: 22px;
          line-height: 22px;
          padding-left: 20px; }
          @media screen and (max-width: 768px) {
            .login-form .login .extra-login .item .txt {
              font-size: 16px;
              line-height: 16px;
              padding-left: 5px; } }
        .login-form .login .extra-login .item:last-child {
          margin-bottom: 0; }
      .login-form .login .extra-login .item-line {
        background-color: #22b754;
        border: 2px solid #22b754; }
        .login-form .login .extra-login .item-line:hover {
          background-color: #219147;
          border: 2px solid #22b754; }
      .login-form .login .extra-login .item-google {
        color: #4c4c4c;
        background-color: #ffffff;
        border: 2px solid #7e7e7e; }
        .login-form .login .extra-login .item-google:hover {
          color: #4c4c4c;
          background-color: #fffbd5;
          border: 2px solid #646464; }

.manage-login-form {
  min-height: 100%;
  /*background-color: #7c898f;*/
  /*
  &:before {
      content: '';
      position: absolute;
      left: 0;
      bottom: 0;
      background-image: url(images/wave_gray2.svg);
      background-repeat: no-repeat;
      width: 100%;
      height: 30%;
      transform: rotate(180deg);
      opacity: 0.1;
  }
  */ }
  .manage-login-form .login {
    background-color: #ebeddd;
    padding: 20px;
    border-radius: 20px;
    border: 3px solid #5e686c;
    box-shadow: 0 0 3px 0px #333333;
    width: 450px;
    height: fit-content;
    z-index: 1; }
    @media screen and (max-width: 1280px) {
      .manage-login-form .login {
        width: 420px;
        border-radius: 15px; } }
    @media screen and (max-width: 768px) {
      .manage-login-form .login {
        width: 400px;
        border-radius: 10px; } }
    @media screen and (max-width: 480px) {
      .manage-login-form .login {
        width: 92%;
        border-radius: 10px; } }
    .manage-login-form .login .symbol {
      width: 100%;
      font-size: 6em;
      text-align: center; }

/*-------------------------------------------------------------------------------------------------
▼ ドキュメント
-------------------------------------------------------------------------------------------------*/
.document {
  font-size: 14px;
  padding: 30px;
  margin: 20px auto;
  max-width: 1000px;
  color: #353535; }
  @media screen and (max-width: 768px) {
    .document {
      padding: 15px; } }
  .document .document-title {
    font-size: 24px; }
    @media screen and (max-width: 768px) {
      .document .document-title {
        font-size: 18px; } }
  .document .item {
    margin-bottom: 50px; }
    .document .item .block-title {
      font-size: 16px;
      font-weight: bold; }
    .document .item p {
      margin-bottom: 20px; }

/*-------------------------------------------------------------------------------------------------
▼ 本人認証サンプル
-------------------------------------------------------------------------------------------------*/
.verify-document-sample {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  padding: 20px 0 0; }
  .verify-document-sample .sample {
    width: 49%;
    display: flex;
    flex-direction: column;
    padding: 20px;
    border: 3px solid #d9d6d6;
    color: #444444;
    background-color: #ffffff;
    border-radius: 5px;
    margin: 10px 0.5%; }
    @media screen and (max-width: 980px) {
      .verify-document-sample .sample {
        width: 100%;
        margin: 10px 0; } }
    .verify-document-sample .sample .doc-type {
      width: 100%;
      font-weight: bold;
      font-size: 20px;
      margin-bottom: 10px; }
    .verify-document-sample .sample .guideline {
      width: 100%;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center; }
      .verify-document-sample .sample .guideline img {
        width: 100%;
        max-width: 350px; }
      .verify-document-sample .sample .guideline .line {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        margin-top: 10px; }

/*-------------------------------------------------------------------------------------------------
▼ 提供サービス選択
-------------------------------------------------------------------------------------------------*/
.service-select {
  width: 100%;
  display: flex;
  flex-direction: column;
  margin-top: 20px; }
  .service-select .description {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px; }
    .service-select .description .txt {
      font-size: 30px; }
      @media screen and (max-width: 768px) {
        .service-select .description .txt {
          font-size: 26px; } }
  .service-select .services {
    width: 100%;
    display: flex;
    flex-wrap: wrap; }
    .service-select .services .service {
      width: 11.5%;
      height: 130px;
      background-color: #ffffff;
      border: 3px solid #f1f1f1;
      border-radius: 10px;
      margin: 0.5% 0.5%;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      cursor: pointer; }
      .service-select .services .service:hover {
        background-color: #ffc10721;
        border: 3px solid #ffc10721;
        color: #6f6f6f; }
      @media screen and (max-width: 980px) {
        .service-select .services .service {
          width: 18.0%;
          margin: 0.5% 1.0%; } }
      @media screen and (max-width: 768px) {
        .service-select .services .service {
          width: 23.0%;
          margin: 0.5% 1.0%; } }
      @media screen and (max-width: 480px) {
        .service-select .services .service {
          width: 31.33%;
          margin: 0.5% 1.0%; } }
      @media screen and (max-width: 360px) {
        .service-select .services .service {
          width: 48.0%;
          margin: 0.5% 1.0%; } }
      .service-select .services .service .icon {
        height: 60%;
        display: flex;
        align-items: center;
        justify-content: center;
        padding-top: 8px; }
        .service-select .services .service .icon img {
          height: 100%;
          object-fit: contain; }
      .service-select .services .service .cate-name {
        height: 40%;
        display: flex;
        align-items: center;
        padding: 0 8px;
        font-size: 16px;
        line-height: 18px; }

/*-------------------------------------------------------------------------------------------------
▼SPホーム
-------------------------------------------------------------------------------------------------*/
.home-page {
  width: 100%;
  padding: 0 0 80px;
  display: flex;
  flex-direction: column; }
  .home-page .home-banner {
    width: 100%;
    display: flex; }
    .home-page .home-banner img {
      width: 100%;
      height: 300px;
      object-fit: cover; }
  .home-page .home-contents {
    width: 100%;
    padding: 0 30px 20px;
    display: flex;
    flex-direction: column; }
    @media screen and (max-width: 980px) {
      .home-page .home-contents {
        padding: 0 20px 20px; } }
    @media screen and (max-width: 768px) {
      .home-page .home-contents {
        padding: 0 10px 20px; } }
    .home-page .home-contents .summary-area {
      width: 100%;
      display: flex;
      justify-content: center; }
      .home-page .home-contents .summary-area .user-summary {
        width: 85%;
        display: flex;
        position: relative; }
        @media screen and (max-width: 980px) {
          .home-page .home-contents .summary-area .user-summary {
            width: 100%; } }
        @media screen and (max-width: 768px) {
          .home-page .home-contents .summary-area .user-summary {
            flex-wrap: wrap; } }
        .home-page .home-contents .summary-area .user-summary .photo {
          margin-top: -20px; }
          @media screen and (max-width: 768px) {
            .home-page .home-contents .summary-area .user-summary .photo {
              margin-left: 20px; } }
          .home-page .home-contents .summary-area .user-summary .photo img {
            width: 120px;
            height: 120px;
            border-radius: 50%;
            border: 3px solid #ffffff;
            object-fit: cover; }
            @media screen and (max-width: 768px) {
              .home-page .home-contents .summary-area .user-summary .photo img {
                width: 110px;
                height: 110px; } }
            @media screen and (max-width: 480px) {
              .home-page .home-contents .summary-area .user-summary .photo img {
                width: 100px;
                height: 100px; } }
        .home-page .home-contents .summary-area .user-summary .profile {
          width: 100%;
          padding: 20px 20px;
          display: flex;
          flex-direction: column; }
          .home-page .home-contents .summary-area .user-summary .profile .name {
            font-size: 24px;
            font-weight: bold;
            line-height: 24px;
            color: #333333; }
          .home-page .home-contents .summary-area .user-summary .profile .description {
            margin-top: 5px;
            font-size: 14px; }
          .home-page .home-contents .summary-area .user-summary .profile .verify {
            display: flex; }
          .home-page .home-contents .summary-area .user-summary .profile .status {
            display: flex;
            align-items: center;
            flex-wrap: wrap;
            margin-top: 10px;
            font-size: 16px;
            line-height: 16px; }
            .home-page .home-contents .summary-area .user-summary .profile .status .strong {
              font-size: 26px;
              line-height: 26px;
              font-weight: bold;
              padding: 0 8px 0 5px; }
            .home-page .home-contents .summary-area .user-summary .profile .status .bookmark {
              padding: 3px 12px 2px 32px;
              color: #bb9ea8;
              border: 1px solid #d3c3c8;
              border-radius: 17px;
              margin: 5px;
              font-size: 16px;
              line-height: 20px;
              font-weight: normal;
              white-space: nowrap;
              position: relative;
              cursor: pointer; }
              .home-page .home-contents .summary-area .user-summary .profile .status .bookmark.marked {
                color: #ffffff;
                background-color: #ff9800;
                border: 1px solid #ff9800; }
                .home-page .home-contents .summary-area .user-summary .profile .status .bookmark.marked:before {
                  color: #ffffff; }
              .home-page .home-contents .summary-area .user-summary .profile .status .bookmark:before {
                font-family: 'Font Awesome 5 Free';
                content: '\f02e';
                font-size: 16px;
                line-height: 18px;
                position: absolute;
                padding: 3px 0;
                top: 1px;
                left: 13px;
                font-weight: bold;
                color: #bb9ea8; }
              .home-page .home-contents .summary-area .user-summary .profile .status .bookmark:hover {
                opacity: 0.8; }
              .home-page .home-contents .summary-area .user-summary .profile .status .bookmark:active {
                margin: 6px 4px 4px 6px; }
          .home-page .home-contents .summary-area .user-summary .profile .services {
            display: flex;
            margin-top: 10px; }
        .home-page .home-contents .summary-area .user-summary .action {
          display: flex;
          flex-direction: column;
          padding-top: 20px; }
          @media screen and (max-width: 768px) {
            .home-page .home-contents .summary-area .user-summary .action {
              position: absolute;
              right: 0; } }
          @media screen and (max-width: 480px) {
            .home-page .home-contents .summary-area .user-summary .action {
              padding-top: 10px; } }
    .home-page .home-contents .introduction {
      width: 100%;
      border: 1px solid #dfdfdf;
      border-radius: 5px;
      padding: 20px 30px 10px;
      margin-top: 30px;
      user-select: text;
      position: relative; }
      .home-page .home-contents .introduction .title {
        font-size: 22px;
        font-weight: bold;
        color: #444444; }
      .home-page .home-contents .introduction .service-contents {
        white-space: pre-line;
        margin-top: 20px; }
      .home-page .home-contents .introduction .jk-translate {
        position: absolute;
        bottom: 6px;
        right: 6px;
        user-select: none; }
    .home-page .home-contents .services {
      display: flex;
      flex-wrap: wrap; }
      .home-page .home-contents .services .service:nth-child(-n+8) {
        display: flex; }
      .home-page .home-contents .services .service:nth-child(n+9) {
        display: none; }
      @media screen and (max-width: 980px) {
        .home-page .home-contents .services .service:nth-child(-n+6) {
          display: flex; }
        .home-page .home-contents .services .service:nth-child(n+7) {
          display: none; } }
      @media screen and (max-width: 768px) {
        .home-page .home-contents .services .service:nth-child(-n+6) {
          display: flex; }
        .home-page .home-contents .services .service:nth-child(n+7) {
          display: none; } }
      @media screen and (max-width: 480px) {
        .home-page .home-contents .services .service:nth-child(-n+4) {
          display: flex; }
        .home-page .home-contents .services .service:nth-child(n+5) {
          display: none; } }
    .home-page .home-contents .detail-info {
      padding: 0 5px;
      font-size: 15px; }
      .home-page .home-contents .detail-info .one-info {
        width: 100%;
        max-width: 400px;
        display: flex;
        align-items: center; }
        .home-page .home-contents .detail-info .one-info .title {
          width: 40%;
          font-weight: normal; }
          .home-page .home-contents .detail-info .one-info .title:before {
            padding-right: 10px;
            font-weight: bold; }
        .home-page .home-contents .detail-info .one-info .txt {
          width: 60%; }
    .home-page .home-contents .sp-option-info {
      padding: 0 5px;
      font-size: 15px; }
      .home-page .home-contents .sp-option-info .one-info {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        margin-bottom: 10px; }
        .home-page .home-contents .sp-option-info .one-info:last-child {
          margin-bottom: unset; }
        .home-page .home-contents .sp-option-info .one-info .accent {
          font-size: 16px;
          font-weight: bold; }
        .home-page .home-contents .sp-option-info .one-info .main {
          width: 220px;
          font-weight: normal; }
          .home-page .home-contents .sp-option-info .one-info .main:before {
            padding-right: 10px;
            font-weight: bold; }
        .home-page .home-contents .sp-option-info .one-info .sub {
          width: 150px; }
        .home-page .home-contents .sp-option-info .one-info .term {
          width: 175px; }
        .home-page .home-contents .sp-option-info .one-info .main, .home-page .home-contents .sp-option-info .one-info .sub, .home-page .home-contents .sp-option-info .one-info .term {
          padding-right: 10px;
          text-overflow: ellipsis;
          overflow: hidden;
          display: -webkit-box;
          -webkit-box-orient: vertical;
          -webkit-line-clamp: 1; }
          @media screen and (max-width: 480px) {
            .home-page .home-contents .sp-option-info .one-info .main, .home-page .home-contents .sp-option-info .one-info .sub, .home-page .home-contents .sp-option-info .one-info .term {
              width: 100%; } }

/*-------------------------------------------------------------------------------------------------
▼SPサービス詳細／ポートフォリオ詳細／もっと見るページのサービスエリア（共通）
-------------------------------------------------------------------------------------------------*/
.service-area {
  width: 300px; }
  @media screen and (max-width: 980px) {
    .service-area {
      width: 100%;
      margin-top: 30px; } }
  .service-area .service-action {
    padding: 16px 24px;
    border: 1px solid #eaeaea;
    border-radius: 10px;
    display: flex;
    flex-direction: column; }
    .service-area .service-action .price {
      width: 100%; }
      .service-area .service-action .price select {
        height: 70px; }
    .service-area .service-action .actions {
      width: 100%; }
      .service-area .service-action .actions .button {
        width: 100%;
        margin: 3px 0; }
        .service-area .service-action .actions .button:active {
          margin: 4px -1px 2px 1px; }
  .service-area .user-profile {
    padding: 16px 24px;
    border: 1px solid #eaeaea;
    border-radius: 10px;
    display: flex;
    flex-direction: column; }
    @media screen and (max-width: 768px) {
      .service-area .user-profile {
        padding: 16px 10px; } }
    .service-area .user-profile .profile-title {
      width: 100%;
      text-align: center;
      font-size: 22px;
      font-weight: bold;
      color: #333333; }
    .service-area .user-profile .user-summary {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      margin-top: 10px; }
      @media screen and (max-width: 980px) {
        .service-area .user-profile .user-summary {
          flex-direction: row; } }
      .service-area .user-profile .user-summary .photo {
        width: 100px;
        height: 100px;
        cursor: pointer; }
        @media screen and (max-width: 980px) {
          .service-area .user-profile .user-summary .photo {
            margin-right: 50px; } }
        @media screen and (max-width: 768px) {
          .service-area .user-profile .user-summary .photo {
            margin-right: 15px; } }
        .service-area .user-profile .user-summary .photo:hover {
          opacity: 0.8; }
        .service-area .user-profile .user-summary .photo img {
          width: 100%;
          height: 100%;
          border-radius: 50%;
          object-fit: cover; }
      .service-area .user-profile .user-summary .summary {
        display: flex;
        flex-direction: column;
        align-items: center;
        margin-top: 10px; }
        .service-area .user-profile .user-summary .summary .name {
          font-weight: bold;
          cursor: pointer; }
          .service-area .user-profile .user-summary .summary .name:before {
            position: absolute;
            right: -25px;
            color: #47b1e1;
            font-weight: normal; }
          .service-area .user-profile .user-summary .summary .name:hover {
            color: #ffa000; }
            .service-area .user-profile .user-summary .summary .name:hover:before {
              color: #ffa000; }
        .service-area .user-profile .user-summary .summary .description {
          font-size: 12px;
          margin-top: 5px; }
        .service-area .user-profile .user-summary .summary .status {
          margin-top: 5px; }
    .service-area .user-profile .introduction-block {
      display: flex;
      flex-direction: column;
      margin-top: 20px; }
      @media screen and (max-width: 980px) {
        .service-area .user-profile .introduction-block {
          display: none; } }
      .service-area .user-profile .introduction-block .introduction {
        white-space: pre-line;
        user-select: text;
        max-height: 650px;
        overflow-y: auto;
        scrollbar-width: none;
        font-size: 15px; }

/*-------------------------------------------------------------------------------------------------
▼SPサービス詳細／ポートフォリオ詳細
-------------------------------------------------------------------------------------------------*/
.service-deail, .portfolio-detail {
  width: 100%;
  padding: 0 20px 20px;
  display: flex;
  flex-wrap: wrap; }
  @media screen and (max-width: 980px) {
    .service-deail, .portfolio-detail {
      padding: 0 10px 20px; } }
  @media screen and (max-width: 768px) {
    .service-deail, .portfolio-detail {
      padding: 0 0 20px; } }
  .service-deail .detail-area, .portfolio-detail .detail-area {
    width: calc(100% - 300px);
    padding-right: 30px;
        /*
        .photos {
            min-height: 400px;
            max-height: 600px;
            display: flex;

            @include breakpoint('<=small') {
                max-height: unset;
                flex-direction: column;
            }

            .main {
                width: calc(100% - 90px);
                margin-right: 10px;
                display: flex;
                background-color: #f7f7f7;
                position: relative;

                @include breakpoint('<=small') {
                    width: 100%;
                    height: 300px;
                    margin-right: unset;
                }

                img {
                    width: 100%;
                    height: auto;
                    max-height: 100%;
                    object-fit: contain;
                    cursor: pointer;

                    @include breakpoint('<=small') {
                        max-width: 600px;
                    }
                }

                .expansion {
                    position: absolute;
                    left: 0;
                    top: 0;
                    cursor: pointer;

                    &:before {
                        font-size: 24px;
                        display: flex;
                        align-items: center;
                        justify-content: center;
                        padding: 5px;
                        border: 1px solid #f9e8b6;
                        color: #f9e8b6;
                    }

                    &:hover {
                        &:before {
                            border: 1px solid #ffda6c;
                            color: #ffda6c;
                        }
                    }
                }
            }

            .sub-list {
                width: 80px;
                display: flex;
                flex-direction: column;
                overflow-y: auto;
                scrollbar-width: none;

                @include breakpoint('<=small') {
                    width: unset;
                    height: 80px;
                    flex-direction: row;
                    overflow-y: hidden;
                    overflow-x: auto;
                }

                .sub {
                    width: 80px;
                    height: 80px;
                    margin-bottom: 4px;
                    cursor: pointer;

                    @include breakpoint('<=small') {
                        width: unset;
                        height: 100%;
                    }

                    &:hover {
                        opacity: 0.8;
                    }

                    img {
                        width: 80px;
                        height: 80px;
                        object-fit: cover;
                        border-radius: 5px;
                        border: 1px solid #efefef;
                    }
                }
            }
        }
        */ }
    @media screen and (max-width: 980px) {
      .service-deail .detail-area, .portfolio-detail .detail-area {
        width: 100%;
        padding-right: unset; } }
    .service-deail .detail-area .service-title, .portfolio-detail .detail-area .service-title {
      width: 100%;
      font-size: 24px;
      font-weight: bold;
      line-height: 31px;
      color: #000000; }
    .service-deail .detail-area .summary, .portfolio-detail .detail-area .summary {
      width: 100%;
      border: 1px solid #dddddd;
      padding: 10px 20px;
      margin-top: 20px;
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      border-radius: 7px;
      color: #333333; }
      @media screen and (max-width: 768px) {
        .service-deail .detail-area .summary, .portfolio-detail .detail-area .summary {
          padding: 10px 5px; } }
      .service-deail .detail-area .summary .tag, .portfolio-detail .detail-area .summary .tag {
        display: flex;
        align-items: center;
        margin: 0 15px; }
        @media screen and (max-width: 768px) {
          .service-deail .detail-area .summary .tag, .portfolio-detail .detail-area .summary .tag {
            margin: 0 10px; } }
        .service-deail .detail-area .summary .tag .strong, .portfolio-detail .detail-area .summary .tag .strong {
          font-size: 22px;
          font-weight: bold;
          padding: 0 10px; }
          .service-deail .detail-area .summary .tag .strong:before, .portfolio-detail .detail-area .summary .tag .strong:before {
            color: #ffa000;
            padding-right: 7px; }
    .service-deail .detail-area .image-viewer, .portfolio-detail .detail-area .image-viewer {
      margin-top: 10px;
      position: relative; }
      .service-deail .detail-area .image-viewer .image-swiper-view-area .main-slider, .portfolio-detail .detail-area .image-viewer .image-swiper-view-area .main-slider {
        background-color: #ffffff;
        border: 1px solid #e7e7e7;
        border-radius: 7px;
        height: 500px; }
        @media screen and (max-width: 980px) {
          .service-deail .detail-area .image-viewer .image-swiper-view-area .main-slider, .portfolio-detail .detail-area .image-viewer .image-swiper-view-area .main-slider {
            height: 400px; } }
        @media screen and (max-width: 768px) {
          .service-deail .detail-area .image-viewer .image-swiper-view-area .main-slider, .portfolio-detail .detail-area .image-viewer .image-swiper-view-area .main-slider {
            height: 350px; } }
        @media screen and (max-width: 480px) {
          .service-deail .detail-area .image-viewer .image-swiper-view-area .main-slider, .portfolio-detail .detail-area .image-viewer .image-swiper-view-area .main-slider {
            height: 300px; } }
        .service-deail .detail-area .image-viewer .image-swiper-view-area .main-slider .swiper-wrapper, .portfolio-detail .detail-area .image-viewer .image-swiper-view-area .main-slider .swiper-wrapper {
          align-items: center; }
        .service-deail .detail-area .image-viewer .image-swiper-view-area .main-slider .swiper-pagination, .portfolio-detail .detail-area .image-viewer .image-swiper-view-area .main-slider .swiper-pagination {
          display: none; }
        .service-deail .detail-area .image-viewer .image-swiper-view-area .main-slider .expansion, .portfolio-detail .detail-area .image-viewer .image-swiper-view-area .main-slider .expansion {
          position: absolute;
          left: 5px;
          top: 5px;
          z-index: 2;
          cursor: pointer; }
          .service-deail .detail-area .image-viewer .image-swiper-view-area .main-slider .expansion:before, .portfolio-detail .detail-area .image-viewer .image-swiper-view-area .main-slider .expansion:before {
            font-size: 24px;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 5px;
            border: 1px solid #f9e8b6;
            color: #f9e8b6; }
          .service-deail .detail-area .image-viewer .image-swiper-view-area .main-slider .expansion:hover:before, .portfolio-detail .detail-area .image-viewer .image-swiper-view-area .main-slider .expansion:hover:before {
            border: 1px solid #ffda6c;
            color: #ffda6c; }
      .service-deail .detail-area .image-viewer .image-swiper-view-area .sub-slider, .portfolio-detail .detail-area .image-viewer .image-swiper-view-area .sub-slider {
        background-color: unset;
        margin-top: 5px; }
    .service-deail .detail-area .service-contents, .portfolio-detail .detail-area .service-contents {
      white-space: pre-line;
      user-select: text; }
    .service-deail .detail-area .service-price, .portfolio-detail .detail-area .service-price {
      width: 100%; }
      .service-deail .detail-area .service-price .price-one, .portfolio-detail .detail-area .service-price .price-one {
        width: 100%;
        display: flex;
        align-items: center;
        padding: 5px 0;
        border-bottom: 1px solid #eaeaea; }
        .service-deail .detail-area .service-price .price-one:first-child, .portfolio-detail .detail-area .service-price .price-one:first-child {
          border-top: 1px solid #eaeaea; }
        .service-deail .detail-area .service-price .price-one:last-child, .portfolio-detail .detail-area .service-price .price-one:last-child {
          margin-bottom: unset; }
        @media screen and (max-width: 480px) {
          .service-deail .detail-area .service-price .price-one, .portfolio-detail .detail-area .service-price .price-one {
            flex-wrap: wrap; } }
        .service-deail .detail-area .service-price .price-one .contents, .portfolio-detail .detail-area .service-price .price-one .contents {
          display: flex;
          flex-direction: column;
          width: calc(100% - 150px); }
          @media screen and (max-width: 480px) {
            .service-deail .detail-area .service-price .price-one .contents, .portfolio-detail .detail-area .service-price .price-one .contents {
              width: 100%; } }
          .service-deail .detail-area .service-price .price-one .contents .title, .portfolio-detail .detail-area .service-price .price-one .contents .title {
            font-size: 18px;
            font-weight: bold;
            color: #666666; }
          .service-deail .detail-area .service-price .price-one .contents .description, .portfolio-detail .detail-area .service-price .price-one .contents .description {
            font-size: 14px; }
        .service-deail .detail-area .service-price .price-one .price, .portfolio-detail .detail-area .service-price .price-one .price {
          width: 150px;
          font-size: 20px;
          font-weight: bold;
          display: flex;
          justify-content: flex-end; }
          @media screen and (max-width: 480px) {
            .service-deail .detail-area .service-price .price-one .price, .portfolio-detail .detail-area .service-price .price-one .price {
              width: 100%; } }

/*-------------------------------------------------------------------------------------------------
▼SPサービス／ポートフォリオの一覧
-------------------------------------------------------------------------------------------------*/
.more-service {
  width: 100%;
  padding: 0 20px 20px;
  display: flex;
  flex-wrap: wrap; }
  @media screen and (max-width: 980px) {
    .more-service {
      padding: 0 10px 20px; } }
  @media screen and (max-width: 768px) {
    .more-service {
      padding: 0 0 20px; } }
  @media screen and (max-width: 980px) {
    .more-service .service-area {
      display: none; } }
  .more-service .detail-area {
    width: calc(100% - 300px);
    padding-left: 30px; }
    @media screen and (max-width: 980px) {
      .more-service .detail-area {
        width: 100%;
        padding-left: unset; } }
    .more-service .detail-area .services .service {
      width: 32.8%; }
      @media screen and (max-width: 980px) {
        .more-service .detail-area .services .service {
          width: 32%; } }
      @media screen and (max-width: 768px) {
        .more-service .detail-area .services .service {
          width: 49%; } }
      @media screen and (max-width: 480px) {
        .more-service .detail-area .services .service {
          width: 100%; } }

/*-------------------------------------------------------------------------------------------------
▼固定ヘッダ（コンテンツ用）
-------------------------------------------------------------------------------------------------*/
.fixed-contents-header {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  position: sticky;
  top: 115px;
  background-color: #ffffff;
  margin-top: 20px;
  padding: 20px 0 10px;
  z-index: 1; }
  @media screen and (max-width: 768px) {
    .fixed-contents-header {
      top: 55px;
      padding: 10px 0 10px; } }
  .fixed-contents-header .breadcrumbs {
    padding: 0 20px; }
  .fixed-contents-header .control-contents {
    width: 100%;
    padding: 0 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative; }
    @media screen and (max-width: 768px) {
      .fixed-contents-header .control-contents {
        flex-wrap: wrap;
        padding: 0 10px; } }
    .fixed-contents-header .control-contents .title {
      font-size: 26px;
      line-height: 29px;
      font-weight: bold;
      text-overflow: ellipsis;
      overflow: hidden;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 1; }
    .fixed-contents-header .control-contents .control {
      margin-left: 10px;
      display: flex;
      flex-direction: row-reverse; }
      @media screen and (max-width: 768px) {
        .fixed-contents-header .control-contents .control {
          width: 100%;
          margin-top: 10px;
          margin-left: unset; } }
      .fixed-contents-header .control-contents .control .btn {
        height: 2.0em;
        padding: 2px 20px 0;
        display: flex;
        justify-content: center;
        align-items: center;
        border: 1px solid #dddddd;
        border-radius: 6px;
        cursor: pointer;
        white-space: nowrap;
        margin-left: 10px;
        position: relative;
        font-size: 16px; }
        @media screen and (max-width: 768px) {
          .fixed-contents-header .control-contents .control .btn {
            margin-left: 5px; } }
        @media screen and (max-width: 480px) {
          .fixed-contents-header .control-contents .control .btn {
            padding: 2px 10px 0; } }
        .fixed-contents-header .control-contents .control .btn:hover {
          color: #ffffff;
          background-color: #666666; }
        .fixed-contents-header .control-contents .control .btn.left:before, .fixed-contents-header .control-contents .control .btn.right:before {
          font-family: 'Font Awesome 5 Free';
          font-size: 18px;
          line-height: 21px;
          position: absolute;
          height: 30px;
          padding: 5px 8px;
          top: 0px;
          font-weight: bold;
          color: #a9a9a9; }
        .fixed-contents-header .control-contents .control .btn.left:hover:before, .fixed-contents-header .control-contents .control .btn.right:hover:before {
          color: #ffffff; }
        .fixed-contents-header .control-contents .control .btn.left {
          padding-left: 40px; }
          .fixed-contents-header .control-contents .control .btn.left:before {
            left: 5px;
            content: '\f053'; }
        .fixed-contents-header .control-contents .control .btn.right {
          padding-right: 40px; }
          .fixed-contents-header .control-contents .control .btn.right:before {
            right: 5px;
            content: '\f054'; }
        .fixed-contents-header .control-contents .control .btn.disabled {
          pointer-events: none;
          color: #eaeaea;
          border: 1px solid #eaeaea; }
          .fixed-contents-header .control-contents .control .btn.disabled:before {
            color: #eaeaea; }

/*-------------------------------------------------------------------------------------------------
▼リビュー
-------------------------------------------------------------------------------------------------*/
.review {
  width: 100%;
  max-width: 800px; }
  .review .summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap; }
    .review .summary .score-board {
      display: flex;
      align-items: center; }
      .review .summary .score-board .score {
        font-size: 44px;
        font-weight: bold;
        color: #444444; }
      .review .summary .score-board .stars {
        display: flex;
        flex-direction: column;
        margin-left: 18px; }
        .review .summary .score-board .stars .mark {
          color: #ff9800;
          font-size: 20px;
          font-weight: bold;
          line-height: 20px; }
        .review .summary .score-board .stars .txt {
          font-size: 14px; }
    .review .summary .search {
      display: flex;
      align-items: center; }
      .review .summary .search select {
        height: 38px;
        padding: 6px 35px 3px 15px;
        margin-left: 5px;
        cursor: pointer; }
  .review .review-detail {
    width: 100%; }
    .review .review-detail .review-one {
      margin-top: 25px; }
      .review .review-detail .review-one:first-child {
        margin-top: 15px; }
      .review .review-detail .review-one .review-infos {
        display: flex;
        justify-content: space-between;
        align-items: center; }
        .review .review-detail .review-one .review-infos .name {
          font-weight: bold; }
        .review .review-detail .review-one .review-infos .info {
          display: flex;
          align-items: center;
          flex-wrap: wrap; }
          .review .review-detail .review-one .review-infos .info .stars {
            display: flex;
            align-items: center; }
            .review .review-detail .review-one .review-infos .info .stars .star {
              color: #ff9800; }
            .review .review-detail .review-one .review-infos .info .stars .score {
              padding-left: 5px; }
          .review .review-detail .review-one .review-infos .info .service {
            padding: 4px 14px 2px;
            border: 1px solid #c3c3c3;
            margin-right: 15px;
            font-size: 14px;
            line-height: 14px; }
      .review .review-detail .review-one .images {
        display: flex;
        flex-wrap: wrap;
        margin-top: 5px; }
        .review .review-detail .review-one .images img {
          width: 150px;
          height: 150px;
          object-fit: cover;
          margin: 5px 5px;
          border-radius: 10px; }
      .review .review-detail .review-one .review-contents {
        white-space: pre-line;
        margin-top: 5px;
        user-select: text; }
      .review .review-detail .review-one .date {
        font-size: 12px; }
  .review .review-more {
    width: 100%;
    display: flex;
    justify-content: center;
    margin-top: 10px; }
    .review .review-more .more {
      font-size: 14px;
      line-height: 14px;
      padding: 6px 20px 5px 20px;
      border: 1px solid #eaeaea;
      border-radius: 15px;
      cursor: pointer; }
      .review .review-more .more .fas, .review .review-more .more .far {
        padding-right: 10px; }
      .review .review-more .more:hover {
        color: #ffffff;
        background-color: #666666; }
      .review .review-more .more:active {
        margin: 1px -1px -1px 1px; }

/*-------------------------------------------------------------------------------------------------
▼コミュニティ投稿
-------------------------------------------------------------------------------------------------*/
.community-write {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-end; }
  .community-write .start-write {
    width: 60px;
    height: 60px;
    color: #ffffff;
    background-color: #0a0a0a;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 14px;
    line-height: 14px;
    cursor: pointer; }
    .community-write .start-write:before {
      font-family: 'Font Awesome 5 Free';
      content: '\f304';
      font-size: 15px;
      line-height: 15px;
      font-weight: bold;
      padding-bottom: 6px; }
    .community-write .start-write:hover {
      opacity: 0.8; }
  .community-write .write-contents {
    display: none;
    flex-direction: column;
    width: 100%;
    max-width: 900px;
    padding: 20px;
    background-color: #ffffff;
    border-radius: 10px 10px 0 0;
    margin-bottom: 50px; }
    .community-write .write-contents .caption {
      width: 100%;
      font-size: 24px;
      font-weight: bold;
      margin-bottom: 10px; }
      .community-write .write-contents .caption span {
        padding-right: 10px; }
    .community-write .write-contents .write-area {
      width: 100%;
      display: flex;
      flex-direction: column;
      overflow-y: auto; }
      .community-write .write-contents .write-area .one-item {
        display: flex;
        margin-bottom: 15px; }
        @media screen and (max-width: 480px) {
          .community-write .write-contents .write-area .one-item {
            flex-wrap: wrap; } }
        .community-write .write-contents .write-area .one-item .title {
          width: 200px;
          display: flex;
          align-items: center; }
          @media screen and (max-width: 768px) {
            .community-write .write-contents .write-area .one-item .title {
              width: 100px; } }
          @media screen and (max-width: 480px) {
            .community-write .write-contents .write-area .one-item .title {
              width: 100%; } }
        .community-write .write-contents .write-area .one-item .contents {
          width: calc(100% - 200px); }
          @media screen and (max-width: 768px) {
            .community-write .write-contents .write-area .one-item .contents {
              width: calc(100% - 100px); } }
          @media screen and (max-width: 480px) {
            .community-write .write-contents .write-area .one-item .contents {
              width: 100%; } }
          .community-write .write-contents .write-area .one-item .contents .write-service-select .btn {
            padding: 0px 35px 0px 0.75em;
            border: solid 1px rgba(210, 215, 217, 0.75);
            border-radius: 0.375em;
            cursor: pointer;
            position: relative;
            display: flex;
            align-items: center;
            height: 2.75em; }
            @media screen and (max-width: 768px) {
              .community-write .write-contents .write-area .one-item .contents .write-service-select .btn {
                padding: 0px 35px 0px 0.4em; } }
            .community-write .write-contents .write-area .one-item .contents .write-service-select .btn:before {
              font-family: 'Font Awesome 5 Free';
              font-size: 18px;
              font-weight: bold;
              line-height: 18px;
              position: absolute;
              right: 10px;
              content: '\f078';
              color: #dddddd; }
    .community-write .write-contents .command-area {
      width: 100%;
      display: flex;
      align-items: center;
      justify-content: center; }
      .community-write .write-contents .command-area .button {
        margin: 0 10px; }
        .community-write .write-contents .command-area .button span {
          padding-right: 10px; }
  .community-write.active .start-write {
    width: 120px;
    height: 35px;
    border-radius: 9px 9px 0 0;
    flex-direction: row;
    margin-right: 20px; }
    .community-write.active .start-write:before {
      content: '\f078';
      padding-bottom: unset;
      padding-right: 6px; }
  .community-write.active .write-contents {
    display: flex;
    border: 5px solid #555555; }
    @media screen and (max-width: 480px) {
      .community-write.active .write-contents {
        padding: 20px 10px; } }

/*-------------------------------------------------------------------------------------------------
▼コミュニティ
-------------------------------------------------------------------------------------------------*/
.community {
  width: 100%;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  padding-top: 15px; }
  .community.hot {
    flex-direction: unset;
    justify-content: space-between; }
    .community.hot .community-item {
      width: 49%;
      padding: 20px;
      border: 2px solid #e3e3e3;
      border-radius: 10px; }
      @media screen and (max-width: 768px) {
        .community.hot .community-item {
          width: 100%;
          margin-bottom: 10px; } }
      .community.hot .community-item:last-child {
        border-bottom: 2px solid #e3e3e3;
        margin-bottom: unset; }
  .community .community-item {
    width: 100%;
    display: flex;
    flex-direction: column;
    padding: 20px 0;
    border-bottom: 1px solid #eaeaea;
    overflow: hidden;
    cursor: pointer; }
    .community .community-item:hover {
      background-color: #fbfbfb; }
    .community .community-item:last-child {
      border-bottom: unset; }
    .community .community-item .community-contents {
      display: flex;
      flex-direction: column;
      width: 100%; }
      .community .community-item .community-contents .genre-service {
        font-size: 13px;
        display: flex;
        align-items: center; }
        .community .community-item .community-contents .genre-service .genre, .community .community-item .community-contents .genre-service .service {
          padding: 4px 10px 3px;
          line-height: 13px;
          border-radius: 13px;
          display: flex;
          align-items: center;
          color: #ffffff;
          white-space: nowrap; }
        .community .community-item .community-contents .genre-service .genre {
          background-color: #8b9777; }
        .community .community-item .community-contents .genre-service .service {
          background-color: #b5936c;
          margin-left: 10px; }
        .community .community-item .community-contents .genre-service span {
          padding-right: 5px; }
      .community .community-item .community-contents .community-title {
        font-size: 18px;
        font-weight: bold;
        line-height: 20px;
        margin-top: 10px;
        color: #5f5f5f; }
      .community .community-item .community-contents .community-text {
        font-size: 14px;
        white-space: pre-line;
        margin-top: 7px;
        text-overflow: ellipsis;
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 4; }
      .community .community-item .community-contents .option-info {
        display: flex;
        justify-content: space-between;
        font-size: 14px;
        margin-top: 5px; }
        .community .community-item .community-contents .option-info .replay-goods span {
          padding-right: 5px; }
        .community .community-item .community-contents .option-info .write-date {
          color: #c98d8d; }
    .community .community-item .image-list {
      margin-top: 10px;
      display: flex;
      flex-wrap: wrap;
      overflow: hidden; }
      .community .community-item .image-list .image {
        margin-right: 5px; }
        .community .community-item .image-list .image img {
          width: 80px !important;
          height: 80px !important;
          object-fit: cover;
          border-radius: 8px;
          border: 1px solid #eaeaea; }

/*-------------------------------------------------------------------------------------------------
▼BBS（コミュにての一つの掲示板）
-------------------------------------------------------------------------------------------------*/
.bbs {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center; }
  .bbs .bbs-contents {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 800px; }
    .bbs .bbs-contents .breadcrumbs {
      width: 100%; }
      .bbs .bbs-contents .breadcrumbs a {
        cursor: pointer; }
    .bbs .bbs-contents .category-service {
      padding: 4px 10px 3px;
      line-height: 13px;
      border-radius: 13px;
      display: flex;
      align-items: center;
      color: #ffffff;
      white-space: nowrap;
      background-color: #b5936c;
      width: fit-content;
      font-size: 12px;
      line-height: 12px; }
      .bbs .bbs-contents .category-service span {
        padding-right: 5px; }
    .bbs .bbs-contents .bbs-title {
      font-size: 24px;
      font-weight: bold;
      margin-top: 10px;
      color: #5f5f5f; }
    .bbs .bbs-contents .option-info {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      .bbs .bbs-contents .option-info .user-info {
        display: flex;
        align-items: center; }
        .bbs .bbs-contents .option-info .user-info .photo img {
          width: 46px;
          height: 46px;
          border-radius: 5px;
          object-fit: cover; }
        .bbs .bbs-contents .option-info .user-info .profile {
          margin-left: 10px;
          display: flex;
          flex-direction: column; }
          .bbs .bbs-contents .option-info .user-info .profile .name {
            display: flex;
            align-items: center;
            font-weight: bold; }
          .bbs .bbs-contents .option-info .user-info .profile .option-profile {
            font-size: 14px; }
      .bbs .bbs-contents .option-info .write-date {
        color: #c98d8d;
        font-size: 15px; }
        .bbs .bbs-contents .option-info .write-date .bbs-delete {
          margin-left: 7px;
          color: #aaaaaa;
          cursor: pointer; }
          .bbs .bbs-contents .option-info .write-date .bbs-delete:hover {
            color: #ffa000; }
    .bbs .bbs-contents .bbs-text {
      white-space: pre-line;
      margin-top: 20px; }
    .bbs .bbs-contents .image-list {
      display: flex;
      flex-wrap: wrap;
      margin-top: 20px; }
      .bbs .bbs-contents .image-list .image {
        width: 24%;
        height: 200px;
        margin: 0.5%;
        cursor: pointer; }
        @media screen and (max-width: 768px) {
          .bbs .bbs-contents .image-list .image {
            width: 32.3%;
            height: 200px;
            margin: 0.5%; } }
        @media screen and (max-width: 480px) {
          .bbs .bbs-contents .image-list .image {
            width: 49.3%;
            height: 200px;
            margin: 0.3%; } }
        @media screen and (max-width: 360px) {
          .bbs .bbs-contents .image-list .image {
            width: 100%;
            height: 200px;
            margin: 0 0 10px 0; } }
        .bbs .bbs-contents .image-list .image img {
          width: 100%;
          height: 100%;
          object-fit: cover;
          border-radius: 10px;
          border: 1px solid #eaeaea; }
          .bbs .bbs-contents .image-list .image img:hover {
            opacity: 0.8; }
    .bbs .bbs-contents .bbs-status {
      display: flex;
      margin-top: 5px; }
      .bbs .bbs-contents .bbs-status .status-one {
        margin-right: 25px; }
        .bbs .bbs-contents .bbs-status .status-one span {
          padding-right: 5px; }
        .bbs .bbs-contents .bbs-status .status-one.clickable:hover {
          opacity: 1;
          color: #ffa000; }
        .bbs .bbs-contents .bbs-status .status-one.selected {
          color: #03a9f4; }
          .bbs .bbs-contents .bbs-status .status-one.selected:hover {
            color: #4dc0f3; }
  .bbs .reply-contents {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 800px;
    margin-top: 20px; }
    .bbs .reply-contents .reply-write {
      display: flex;
      flex-direction: column;
      position: relative; }
      .bbs .reply-contents .reply-write .input-button {
        display: flex; }
        .bbs .reply-contents .reply-write .input-button textarea {
          width: calc(100% - 100px);
          min-width: calc(100% - 72px);
          height: 96px;
          min-height: 50px;
          padding: 10px 10px 10px 40px;
          margin-right: 7px; }
        .bbs .reply-contents .reply-write .input-button .button {
          width: 65px; }
      .bbs .reply-contents .reply-write .image-list .file-uploader.no-tag .file-selecter label .ico {
        position: absolute;
        top: 7px;
        left: 8px; }
    .bbs .reply-contents .reply-history {
      width: 100%;
      display: flex;
      flex-direction: column;
      margin-top: 30px; }
      .bbs .reply-contents .reply-history .one-reply {
        width: 100%;
        margin-top: 30px;
        display: flex;
        position: relative; }
        .bbs .reply-contents .reply-history .one-reply.depth_padding_2 {
          padding-left: 30px; }
        .bbs .reply-contents .reply-history .one-reply.depth_padding_3 {
          padding-left: 60px; }
        .bbs .reply-contents .reply-history .one-reply.depth_padding_4 {
          padding-left: 90px; }
        .bbs .reply-contents .reply-history .one-reply.depth_padding_5 {
          padding-left: 120px; }
        .bbs .reply-contents .reply-history .one-reply.depth_padding_6 {
          padding-left: 150px; }
        .bbs .reply-contents .reply-history .one-reply.depth_padding_7 {
          padding-left: 180px; }
        .bbs .reply-contents .reply-history .one-reply.depth_padding_8 {
          padding-left: 210px; }
        .bbs .reply-contents .reply-history .one-reply.depth_padding_9 {
          padding-left: 240px; }
        .bbs .reply-contents .reply-history .one-reply.depth_padding_10 {
          padding-left: 270px; }
        @media screen and (max-width: 480px) {
          .bbs .reply-contents .reply-history .one-reply.depth_padding_2 {
            padding-left: 15px; }
          .bbs .reply-contents .reply-history .one-reply.depth_padding_3 {
            padding-left: 30px; }
          .bbs .reply-contents .reply-history .one-reply.depth_padding_4 {
            padding-left: 45px; }
          .bbs .reply-contents .reply-history .one-reply.depth_padding_5 {
            padding-left: 60px; }
          .bbs .reply-contents .reply-history .one-reply.depth_padding_6 {
            padding-left: 75px; }
          .bbs .reply-contents .reply-history .one-reply.depth_padding_7 {
            padding-left: 90px; }
          .bbs .reply-contents .reply-history .one-reply.depth_padding_8 {
            padding-left: 105px; }
          .bbs .reply-contents .reply-history .one-reply.depth_padding_9 {
            padding-left: 120px; }
          .bbs .reply-contents .reply-history .one-reply.depth_padding_10 {
            padding-left: 135px; } }
        .bbs .reply-contents .reply-history .one-reply .guide-line {
          width: 3px;
          margin-right: 10px; }
          .bbs .reply-contents .reply-history .one-reply .guide-line.depth_1 {
            background-color: #d5d5d5; }
          .bbs .reply-contents .reply-history .one-reply .guide-line.depth_2 {
            background-color: #ffe28d; }
          .bbs .reply-contents .reply-history .one-reply .guide-line.depth_3 {
            background-color: #a6e3ff; }
          .bbs .reply-contents .reply-history .one-reply .guide-line.depth_4 {
            background-color: #ffc7da; }
          .bbs .reply-contents .reply-history .one-reply .guide-line.depth_5 {
            background-color: #e5f170; }
          .bbs .reply-contents .reply-history .one-reply .guide-line.depth_6 {
            background-color: #c5cdfd; }
          .bbs .reply-contents .reply-history .one-reply .guide-line.depth_7 {
            background-color: #999999; }
          .bbs .reply-contents .reply-history .one-reply .guide-line.depth_8 {
            background-color: #aa00aa; }
          .bbs .reply-contents .reply-history .one-reply .guide-line.depth_9 {
            background-color: #00aaaa; }
          .bbs .reply-contents .reply-history .one-reply .guide-line.depth_10 {
            background-color: #ff3388; }
        .bbs .reply-contents .reply-history .one-reply .one-reply-contents {
          width: calc(100% - 13px); }
          .bbs .reply-contents .reply-history .one-reply .one-reply-contents .replyer-profile {
            display: flex;
            align-items: center; }
            .bbs .reply-contents .reply-history .one-reply .one-reply-contents .replyer-profile .photo img {
              width: 46px;
              height: 46px;
              object-fit: cover;
              border-radius: 5px; }
            .bbs .reply-contents .reply-history .one-reply .one-reply-contents .replyer-profile .profile {
              margin-left: 10px; }
              .bbs .reply-contents .reply-history .one-reply .one-reply-contents .replyer-profile .profile .name {
                font-size: 16px;
                font-weight: bold;
                line-height: 16px;
                display: flex;
                align-items: center; }
              .bbs .reply-contents .reply-history .one-reply .one-reply-contents .replyer-profile .profile .option-profile {
                font-size: 14px;
                line-height: 14px;
                margin-top: 4px; }
          .bbs .reply-contents .reply-history .one-reply .one-reply-contents .reply-text {
            white-space: pre-line;
            margin-top: 5px; }
          .bbs .reply-contents .reply-history .one-reply .one-reply-contents .reply-images {
            display: flex;
            flex-wrap: wrap;
            margin-top: 10px; }
            .bbs .reply-contents .reply-history .one-reply .one-reply-contents .reply-images img {
              width: 120px;
              height: 120px;
              object-fit: cover;
              border-radius: 10px;
              cursor: pointer; }
          .bbs .reply-contents .reply-history .one-reply .one-reply-contents .reply-date {
            font-size: 14px;
            color: #c98d8d;
            margin-top: 5px; }
          .bbs .reply-contents .reply-history .one-reply .one-reply-contents .reply-command {
            display: flex;
            margin-top: 5px; }
            .bbs .reply-contents .reply-history .one-reply .one-reply-contents .reply-command .btn {
              display: flex;
              align-items: center;
              justify-content: center;
              font-size: 14px;
              margin-right: 10px;
              padding: 1px 10px;
              border: 1px solid #d1d1d1;
              border-radius: 4px;
              cursor: pointer; }
              .bbs .reply-contents .reply-history .one-reply .one-reply-contents .reply-command .btn:hover {
                color: #ffffff;
                background-color: #666666;
                border: 1px solid #666666; }
              .bbs .reply-contents .reply-history .one-reply .one-reply-contents .reply-command .btn.selected {
                color: #ffffff;
                background-color: #03a9f4;
                border: 1px solid #03a9f4; }
                .bbs .reply-contents .reply-history .one-reply .one-reply-contents .reply-command .btn.selected:hover {
                  opacity: 0.8; }
          .bbs .reply-contents .reply-history .one-reply .one-reply-contents .reply-delete {
            position: absolute;
            top: 7px;
            right: 0;
            color: #aaaaaa;
            cursor: pointer; }
            .bbs .reply-contents .reply-history .one-reply .one-reply-contents .reply-delete:hover {
              color: #ffa000; }
      .bbs .reply-contents .reply-history .reply-write {
        margin-top: 10px; }
  .bbs .sp-tag {
    font-size: 12px;
    line-height: 12px;
    padding: 3px 10px;
    color: #03a9f4;
    border: 1px solid #03a9f4;
    margin-left: 10px;
    cursor: pointer; }
    .bbs .sp-tag:hover {
      color: #ffffff;
      background-color: #03a9f4; }

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ 管理機能用各パーツ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*-------------------------------------------------------------------------------------------------
▼ カテゴリー階層
-------------------------------------------------------------------------------------------------*/
.category_depth:before {
  content: "";
  display: block;
  position: absolute;
  top: 20px;
  width: 22px;
  height: 0; }
.category_depth:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: 0;
  height: 20px; }
.category_depth.depth1 {
  padding: 0 8px; }
.category_depth.depth2 {
  padding: 0 8px 0 38px;
  position: relative; }
  .category_depth.depth2:before {
    left: 12px;
    border-top: 2px solid #f98080; }
  .category_depth.depth2:after {
    left: 12px;
    border-left: 2px solid #f98080; }
.category_depth.depth3 {
  padding: 0 8px 0 68px;
  position: relative; }
  .category_depth.depth3:before {
    left: 42px;
    border-top: 2px solid #20ad20; }
  .category_depth.depth3:after {
    left: 42px;
    border-left: 2px solid #20ad20; }
.category_depth.depth4 {
  padding: 0 8px 0 98px;
  position: relative; }
  .category_depth.depth4:before {
    left: 72px;
    border-top: 2px solid #63aeef; }
  .category_depth.depth4:after {
    left: 72px;
    border-left: 2px solid #63aeef; }
.category_depth.depth5 {
  padding: 0 8px 0 128px;
  position: relative; }
  .category_depth.depth5:before {
    left: 102px;
    border-top: 2px solid #c353c0; }
  .category_depth.depth5:after {
    left: 102px;
    border-left: 2px solid #c353c0; }
.category_depth.depth6 {
  padding: 0 8px 0 158px;
  position: relative; }
  .category_depth.depth6:before {
    left: 132px;
    border-top: 2px solid #f5a011; }
  .category_depth.depth6:after {
    left: 132px;
    border-left: 2px solid #f5a011; }
.category_depth.depth7 {
  padding: 0 8px 0 188px;
  position: relative; }
  .category_depth.depth7:before {
    left: 162px;
    border-top: 2px solid #bfbba7; }
  .category_depth.depth7:after {
    left: 162px;
    border-left: 2px solid #bfbba7; }
.category_depth.depth8 {
  padding: 0 8px 0 218px;
  position: relative; }
  .category_depth.depth8:before {
    left: 192px;
    border-top: 2px solid #0027ff; }
  .category_depth.depth8:after {
    left: 192px;
    border-left: 2px solid #0027ff; }

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ デバッガー
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.debug-toggle {
  position: absolute;
  right: 5px;
  font-size: 10px;
  line-height: 10px;
  color: #ffffff;
  background-color: #414141;
  border-radius: 3px;
  margin-left: 10px;
  padding: 5px 8px;
  cursor: pointer; }
  .debug-toggle:hover {
    background-color: #ff9800; }
  .debug-toggle:active {
    right: 6px;
    padding: 4px 7px; }

.debug {
  /*width: fit-content;*/
  width: 1000px;
  max-width: 100%;
  max-height: 80%;
  display: none;
  background-color: #b0ad70;
  border: 5px solid #b0ad70;
  box-sizing: border-box;
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 1;
  overflow-y: auto;
  -webkit-user-select: text;
  -moz-user-select: text;
  -ms-user-select: text;
  user-select: text; }
  .debug .debug-contents {
    margin-top: -24px; }
    .debug .debug-contents .debug-section {
      width: 100%;
      display: inline-block;
      background-color: #4f4f4f;
      margin-bottom: 3px;
      float: left; }
      .debug .debug-contents .debug-section .title {
        width: 100%;
        color: #ffff00;
        background-color: #610202;
        font-weight: bold;
        font-size: 12px;
        padding: 3px 10px; }
      .debug .debug-contents .debug-section .item {
        width: 100%;
        background-color: #1d1d1d;
        margin-bottom: 1px;
        display: flex; }
        .debug .debug-contents .debug-section .item .name {
          float: left;
          width: 40%;
          color: #ffffff;
          font-size: 12px;
          padding: 2px 0 2px 10px;
          overflow: hidden; }
        .debug .debug-contents .debug-section .item .value {
          float: left;
          width: 60%;
          color: #ffffff;
          background-color: #333333;
          font-size: 12px;
          padding: 2px 0 2px 10px;
          overflow: hidden;
          white-space: pre-wrap; }
  .debug .debug-close {
    position: sticky;
    top: 0px;
    margin-left: calc(100% - 30px);
    color: #ffffff;
    background-color: #515900;
    border: 1px solid #ffffff;
    border-radius: 12px;
    width: 24px;
    height: 24px;
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transform: rotate(0deg);
    animation: rotate_0 0.65s forwards;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
    .debug .debug-close:hover {
      animation: rotate_90 0.65s forwards; }
    .debug .debug-close:active {
      width: 18px;
      height: 18px;
      right: 13px;
      top: 11px; }

.debug::-webkit-scrollbar {
  width: 1px; }

.debug::-webkit-scrollbar-track {
  background-color: #ccc; }

.debug::-webkit-scrollbar-thumb {
  background-color: #ad0675; }

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ テスト要素画面用
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.tester {
  width: 100%;
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
  background-color: #efefef;
  padding: 20px; }
  .tester .item {
    width: 48%;
    min-height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #ffffff;
    margin: 1%; }
    @media screen and (max-width: 768px) {
      .tester .item {
        width: 100%;
        margin-bottom: 10px; } }

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ アニメーション（keyframes）
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@keyframes menu-bar01 {
  0% {
    -webkit-transform: rotate(45deg) translateY(7px);
    -moz-transform: rotate(45deg) translateY(7px);
    transform: rotate(45deg) translateY(7px); }
  50% {
    -webkit-transform: rotate(0) translateY(7px);
    -moz-transform: rotate(0) translateY(7px);
    transform: rotate(0) translateY(7px); }
  100% {
    -webkit-transform: rotate(0) translateY(0);
    -moz-transform: rotate(0) translateY(0);
    transform: rotate(0) translateY(0); } }
@keyframes menu-bar02 {
  0% {
    -webkit-transform: rotate(-45deg) translateY(-7px);
    -moz-transform: rotate(-45deg) translateY(-7px);
    transform: rotate(-45deg) translateY(-7px); }
  50% {
    -webkit-transform: rotate(0) translateY(-7px);
    -moz-transform: rotate(0) translateY(-7px);
    transform: rotate(0) translateY(-7px); }
  100% {
    -webkit-transform: rotate(0) translateY(0);
    -moz-transform: rotate(0) translateY(0);
    transform: rotate(0) translateY(0); } }
@keyframes active-menu-bar01 {
  0% {
    -webkit-transform: rotate(0) translateY(0);
    -moz-transform: rotate(0) translateY(0);
    transform: rotate(0) translateY(0); }
  50% {
    -webkit-transform: rotate(0) translateY(0);
    -moz-transform: rotate(0) translateY(0);
    transform: rotate(0) translateY(0); }
  100% {
    -webkit-transform: rotate(45deg) translateY(5px) translateX(5px);
    -moz-transform: rotate(45deg) translateY(5px) translateX(5px);
    transform: rotate(45deg) translateY(5px) translateX(5px); } }
@keyframes active-menu-bar02 {
  0% {
    background-color: #ffffff;
    opacity: 1; }
  50% {
    background-color: #00f0ff;
    transform: translateX(10px); }
  70% {
    background-color: #ffc107;
    opacity: 1; }
  100% {
    opacity: 0;
    transform: translateX(50px); } }
@keyframes active-menu-bar03 {
  0% {
    -webkit-transform: rotate(0) translateY(0);
    -moz-transform: rotate(0) translateY(0);
    transform: rotate(0) translateY(0); }
  50% {
    -webkit-transform: rotate(0) translateY(0);
    -moz-transform: rotate(0) translateY(0);
    transform: rotate(0) translateY(0); }
  100% {
    -webkit-transform: rotate(-45deg) translateY(-5px) translateX(5px);
    -moz-transform: rotate(-45deg) translateY(-5px) translateX(5px);
    transform: rotate(-45deg) translateY(-5px) translateX(5px); } }
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
▼ 各種JavascriptモジュールCSSカスタマイズ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*-------------------------------------------------------------------------------------------------
▼ swiper カスタマイズ
-------------------------------------------------------------------------------------------------*/
.slider.single {
  max-width: 1280px;
  margin: 0 auto; }
.slider .swiper {
  width: 100%;
  height: 100%;
  margin-left: auto;
  margin-right: auto; }
.slider .swiper-slide {
  text-align: center;
  font-size: 18px;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  width: auto;
  height: 300px;
  max-width: 1280px; }
  @media screen and (max-width: 980px) {
    .slider .swiper-slide {
      max-width: 100%;
      height: auto; } }
  @media screen and (max-width: 360px) {
    .slider .swiper-slide {
      width: 100%; } }
  .slider .swiper-slide a {
    width: 100%;
    height: 100%; }
    .slider .swiper-slide a img {
      display: block;
      width: auto;
      height: 100%;
      object-fit: contain; }
      @media screen and (max-width: 980px) {
        .slider .swiper-slide a img {
          width: 100%; } }
.slider .swiper-pagination-bullet {
  width: 16px;
  height: 16px;
  background-color: #2f2f2f63;
  border: 1px solid #ffffff;
  margin: 0 10px !important;
  opacity: 1; }
.slider .swiper-pagination-bullet-active {
  background-color: #ff9800; }
.slider .swiper-button-next, .slider .swiper-button-prev {
  color: #ffffffc4; }

.image-viewer .image-swiper-view-area {
  overflow: hidden;
  height: 100%; }
  .image-viewer .image-swiper-view-area .main-slider {
    background-color: #000000;
    height: calc(100% - 70px); }
  .image-viewer .image-swiper-view-area .sub-slider {
    height: 70px;
    background-color: #5b5b5b; }
    .image-viewer .image-swiper-view-area .sub-slider .swiper-slide {
      display: flex;
      align-items: center;
      justify-content: center;
      background-color: #bfbfbf; }
      .image-viewer .image-swiper-view-area .sub-slider .swiper-slide img {
        width: 100%;
        height: 100%;
        object-fit: cover; }
  .image-viewer .image-swiper-view-area .control {
    position: absolute;
    left: 7px;
    top: 7px;
    display: flex;
    z-index: 1; }
    .image-viewer .image-swiper-view-area .control .zoom-in, .image-viewer .image-swiper-view-area .control .keymap {
      cursor: pointer;
      margin: 5px; }
      .image-viewer .image-swiper-view-area .control .zoom-in:hover, .image-viewer .image-swiper-view-area .control .keymap:hover {
        color: #8bc34a; }
    @media screen and (max-width: 768px) {
      .image-viewer .image-swiper-view-area .control .keymap {
        display: none; } }
  .image-viewer .image-swiper-view-area .swiper-pagination-bullet {
    width: 20px;
    height: 20px;
    text-align: center;
    line-height: 20px;
    font-size: 12px;
    color: #ffffff9e;
    opacity: 1;
    background-color: rgba(0, 0, 0, 0.2);
    box-shadow: 0 0 1px 1px #ffffff96; }
  .image-viewer .image-swiper-view-area .swiper-pagination-bullet-active {
    color: #ffffff;
    background-color: #007aff; }
.image-viewer .swiper-button-next, .image-viewer .swiper-button-prev {
  color: #ffffff; }

/*-------------------------------------------------------------------------------------------------
▼ jQuery UI date picker 調整
-------------------------------------------------------------------------------------------------*/
.ui-state-default, .ui-widget-content .ui-state-default {
  border: none;
  text-align: center; }

.ui-state-active, .ui-widget-content .ui-state-active {
  background-color: #10b5ff;
  color: #ffffff !important; }

.ui-widget-header {
  border: unset;
  background-color: unset; }

.ui-widget.ui-widget-content {
  padding: 4px;
  border: 1px solid #727272;
  box-shadow: 1px 1px 6px 0px #6e6e6e; }

.ui-widget-content {
  border: none; }

.ui-datepicker {
  z-index: 1002 !important;
  /* ヘッダ(1001)より上 */ }

.ui-datepicker .ui-datepicker-buttonpane {
  margin: 0; }

.ui-datepicker .ui-datepicker-buttonpane button {
  display: flex;
  align-items: center;
  margin: 5px 5px 3px;
  padding: 0 10px;
  color: #363636 !important;
  font-size: 14px;
  font-weight: normal;
  box-shadow: 0 0 1px 1px #e1e1e1; }

.ui-datepicker table {
  margin: 0; }

.ui-datepicker th {
  background-color: #ede6da;
  border: 1px solid #ffffff;
  padding: 5px 0; }

.ui-datepicker-calendar thead {
  border-bottom: none; }

.ui-datepicker-calendar tbody tr {
  border: none !important; }

.ui-datepicker-calendar tbody tr:nth-child(2n + 1) {
  background-color: unset !important; }

.ui-datepicker-calendar tbody tr:hover {
  background-color: unset; }

.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {
  width: 2.8em;
  background-color: #efefef; }

.ui-datepicker .ui-datepicker-title {
  display: flex;
  justify-content: center;
  align-items: baseline; }

.ui-datepicker select.ui-datepicker-year {
  width: 77px;
  height: 26px;
  padding: 0 0 0 8px;
  text-overflow: unset;
  margin-right: 4px; }

/*-------------------------------------------------------------------------------------------------
▼ jQuery UI ympicker picker 調整
-------------------------------------------------------------------------------------------------*/
.ui-ympicker {
  width: 17em;
  padding: .2em .2em 0;
  display: none; }

.ui-ympicker .ui-ympicker-header {
  position: relative;
  padding: .2em 0; }

.ui-ympicker .ui-ympicker-prev,
.ui-ympicker .ui-ympicker-next {
  position: absolute;
  top: 2px;
  width: 2.8em;
  height: 1.8em;
  border: 1px solid #e3e3e3; }

.ui-ympicker .ui-ympicker-prev-hover,
.ui-ympicker .ui-ympicker-next-hover {
  top: 1px; }

.ui-ympicker .ui-ympicker-prev {
  left: 2px; }

.ui-ympicker .ui-ympicker-next {
  right: 2px; }

.ui-ympicker .ui-ympicker-prev-hover {
  left: 1px; }

.ui-ympicker .ui-ympicker-next-hover {
  right: 1px; }

.ui-ympicker .ui-ympicker-prev span,
.ui-ympicker .ui-ympicker-next span {
  display: block;
  position: absolute;
  left: 50%;
  margin-left: -8px;
  top: 50%;
  margin-top: -8px; }

.ui-ympicker .ui-ympicker-title {
  margin: 0 2.3em 3px;
  line-height: 1.8em;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center; }

.ui-ympicker .ui-ympicker-title select {
  font-size: 1em;
  margin: 1px 0; }

.ui-ympicker select.ui-ympicker-month,
.ui-ympicker select.ui-ympicker-year {
  width: 85px;
  height: 1.7em;
  padding-right: 10px !important;
  margin-right: 5px; }

.ui-ympicker table {
  width: 100%;
  font-size: .9em;
  border-collapse: collapse;
  margin: 0 0 .4em; }
  .ui-ympicker table th {
    padding: .7em .3em;
    text-align: center;
    font-weight: bold;
    border: 0; }
  .ui-ympicker table tr:hover {
    background-color: unset; }
  .ui-ympicker table td {
    border: 0;
    padding: 1px; }
    .ui-ympicker table td span,
    .ui-ympicker table td a {
      display: block;
      padding: .2em;
      text-align: right;
      text-decoration: none; }
      .ui-ympicker table td span:hover,
      .ui-ympicker table td a:hover {
        background-color: #ffff00b3; }

.ui-ympicker .ui-ympicker-buttonpane {
  background-image: none;
  padding: 0 .2em;
  border-left: 0;
  border-right: 0;
  border-bottom: 0; }

.ui-ympicker .ui-ympicker-buttonpane button {
  float: right;
  cursor: pointer;
  width: auto;
  overflow: visible;
  box-shadow: none;
  border: 1px solid #ededed;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: normal;
  padding: 0 10px;
  height: 30px; }
  .ui-ympicker .ui-ympicker-buttonpane button.ui-clear {
    margin-left: 5px; }

.ui-ympicker .ui-ympicker-buttonpane button.ui-ympicker-current {
  float: left; }

.ui-ympicker.ui-ympicker-multi {
  width: auto; }

.ui-ympicker-multi .ui-ympicker-group {
  float: left; }

.ui-ympicker-multi .ui-ympicker-group table {
  width: 95%;
  margin: 0 auto .4em; }

.ui-ympicker-multi-2 .ui-ympicker-group {
  width: 50%; }

.ui-ympicker-multi-3 .ui-ympicker-group {
  width: 33.3%; }

.ui-ympicker-multi-4 .ui-ympicker-group {
  width: 25%; }

.ui-ympicker-multi .ui-ympicker-group-last .ui-ympicker-header,
.ui-ympicker-multi .ui-ympicker-group-middle .ui-ympicker-header {
  border-left-width: 0; }

.ui-ympicker-multi .ui-ympicker-buttonpane {
  clear: left; }

.ui-ympicker-row-break {
  clear: both;
  width: 100%;
  font-size: 0; }

/* RTL support */
.ui-ympicker-rtl {
  direction: rtl; }

.ui-ympicker-rtl .ui-ympicker-prev {
  right: 2px;
  left: auto; }

.ui-ympicker-rtl .ui-ympicker-next {
  left: 2px;
  right: auto; }

.ui-ympicker-rtl .ui-ympicker-prev:hover {
  right: 1px;
  left: auto; }

.ui-ympicker-rtl .ui-ympicker-next:hover {
  left: 1px;
  right: auto; }

.ui-ympicker-rtl .ui-ympicker-buttonpane {
  clear: right; }

.ui-ympicker-rtl .ui-ympicker-buttonpane button {
  float: left; }

.ui-ympicker-rtl .ui-ympicker-buttonpane button.ui-ympicker-current,
.ui-ympicker-rtl .ui-ympicker-group {
  float: right; }

.ui-ympicker-rtl .ui-ympicker-group-last .ui-ympicker-header,
.ui-ympicker-rtl .ui-ympicker-group-middle .ui-ympicker-header {
  border-right-width: 0;
  border-left-width: 1px; }

/*-------------------------------------------------------------------------------------------------
▼ jQuery UI Tooltip 調整
-------------------------------------------------------------------------------------------------*/
.tooltip {
  border: 1px solid #d1d1d1;
  padding: 0px 5px;
  cursor: help; }

.ui-tooltip {
  background: black;
  padding: 5px 10px !important;
  color: white;
  border-radius: 10px;
  font: bold 14px "Helvetica Neue", Sans-Serif; }

.arrow {
  width: 70px;
  height: 16px;
  overflow: hidden;
  position: absolute;
  left: 50%;
  margin-left: -35px;
  bottom: -16px; }
  .arrow .top {
    top: -16px;
    bottom: auto; }
    .arrow .top:after {
      bottom: -20px;
      top: auto; }
  .arrow .left {
    left: 20%; }
  .arrow:after {
    content: "";
    position: absolute;
    left: 20px;
    top: -20px;
    width: 25px;
    height: 25px;
    box-shadow: 6px 5px 9px -9px black;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    background: black; }

/*-------------------------------------------------------------------------------------------------
▼ iziModal 調整
-------------------------------------------------------------------------------------------------*/
/* モーダル高さが100%になる場合は「html」に「iziModal-isAttached」がappendされる */
html.iziModal-isAttached {
  overflow: initial; }

.iziModal {
  /*max-height: 90% !important;*/
  /*
      .image-swiper-view-area {
          overflow: hidden;
          //max-height: 100%;
          height: 100%;
  
          .main-slider {
              background-color: #000000;
              height: calc(100% - 70px);
          }
  
          .sub-slider {
              height: 70px;
              background-color: #5b5b5b;
  
              .swiper-slide {
                  display: flex;
                  align-items: center;
                  justify-content: center;
                  background-color: #bfbfbf;
  
                  img {
                      width: 100%;
                      height: 100%;
                      object-fit: cover;
                  }
              }
          }
  
          .control {
              position: absolute;
              left: 7px;
              top: 7px;
              display: flex;
              z-index: 1;
  
              .zoom-in, .keymap {
                  cursor: pointer;
                  margin: 5px;
  
                  &:hover {
                      color: #8bc34a;
                  }
              }
  
              @include breakpoint('<=small') {
                  .keymap {
                      display: none;
                  }
              }
          }
  
          .swiper-pagination-bullet {
              width: 20px;
              height: 20px;
              text-align: center;
              line-height: 20px;
              font-size: 12px;
              color: #ffffff9e;
              opacity: 1;
              background-color: rgba(0, 0, 0, 0.2);
              box-shadow: 0 0 1px 1px #ffffff96;
          }
          .swiper-pagination-bullet-active {
              color: #ffffff;
              background-color: #007aff;
          }
      }
  */ }

/*-------------------------------------------------------------------------------------------------
▼ simplePagination.css 調整
-------------------------------------------------------------------------------------------------*/
.custom-theme a, .custom-theme span {
  width: 40px; }

@media screen and (max-width: 600px) {
  .custom-theme a, .custom-theme span {
    width: 35px; } }
@media screen and (max-width: 480px) {
  .custom-theme a, .custom-theme span {
    width: 28px; } }
@media screen and (max-width: 375px) {
  .custom-theme a, .custom-theme span {
    width: 26px; } }
@media screen and (max-width: 330px) {
  .custom-theme a, .custom-theme span {
    width: 22px; } }
.custom-theme .current {
  width: 40px; }

@media screen and (max-width: 600px) {
  .custom-theme .current {
    width: 35px; } }
@media screen and (max-width: 480px) {
  .custom-theme .current {
    width: 28px; } }
@media screen and (max-width: 375px) {
  .custom-theme .current {
    width: 26px; } }
@media screen and (max-width: 330px) {
  .custom-theme .current {
    width: 22px; } }
/*-------------------------------------------------------------------------------------------------
▼ Particles Effect 調整
-------------------------------------------------------------------------------------------------*/
.particles-effect {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: calc(100% - 20px);
  pointer-events: none; }

/*-------------------------------------------------------------------------------------------------
▼ tippy（ツールチップ）
-------------------------------------------------------------------------------------------------*/
.tippy-box[data-theme~='custom'] {
  background-color: #f9f9e8;
  color: #2d2d2d;
  border: 3px solid #b7b778;
  box-shadow: 2px 2px 4px 0px #000000d1;
  padding: 5px;
  text-align: left; }
  .tippy-box[data-theme~='custom'].tippy-box[data-placement^=top] > .tippy-arrow:before {
    bottom: -11px; }
  .tippy-box[data-theme~='custom'].tippy-box[data-placement^=right] > .tippy-arrow:before {
    left: -11px; }
  .tippy-box[data-theme~='custom'].tippy-box[data-placement^=bottom] > .tippy-arrow:before {
    top: -11px; }
  .tippy-box[data-theme~='custom'].tippy-box[data-placement^=left] > .tippy-arrow:before {
    right: -11px; }

.tippy-box[data-theme~='custom'] > .tippy-arrow {
  color: #b7b778; }

/* light */
.tippy-box[data-theme~=light] {
  color: #26323d;
  box-shadow: 0 0 20px 4px rgba(154, 161, 177, 0.15), 0 4px 80px -8px rgba(36, 40, 47, 0.25), 0 4px 4px -2px rgba(91, 94, 105, 0.15);
  background-color: #fff; }

.tippy-box[data-theme~=light][data-placement^=top] > .tippy-arrow:before {
  border-top-color: #fff; }

.tippy-box[data-theme~=light][data-placement^=bottom] > .tippy-arrow:before {
  border-bottom-color: #fff; }

.tippy-box[data-theme~=light][data-placement^=left] > .tippy-arrow:before {
  border-left-color: #fff; }

.tippy-box[data-theme~=light][data-placement^=right] > .tippy-arrow:before {
  border-right-color: #fff; }

.tippy-box[data-theme~=light] > .tippy-backdrop {
  background-color: #fff; }

.tippy-box[data-theme~=light] > .tippy-svg-arrow {
  fill: #fff; }

/* scale */
.tippy-box[data-animation=scale][data-placement^=top] {
  transform-origin: bottom; }

.tippy-box[data-animation=scale][data-placement^=bottom] {
  transform-origin: top; }

.tippy-box[data-animation=scale][data-placement^=left] {
  transform-origin: right; }

.tippy-box[data-animation=scale][data-placement^=right] {
  transform-origin: left; }

.tippy-box[data-animation=scale][data-state=hidden] {
  transform: scale(0.5);
  opacity: 0; }

/* scale-extreme */
.tippy-box[data-animation=scale-extreme][data-placement^=top] {
  transform-origin: bottom; }

.tippy-box[data-animation=scale-extreme][data-placement^=bottom] {
  transform-origin: top; }

.tippy-box[data-animation=scale-extreme][data-placement^=left] {
  transform-origin: right; }

.tippy-box[data-animation=scale-extreme][data-placement^=right] {
  transform-origin: left; }

.tippy-box[data-animation=scale-extreme][data-state=hidden] {
  transform: scale(0);
  opacity: .25; }

/* shift-away-extreme */
.tippy-box[data-animation=shift-away-extreme][data-state=hidden] {
  opacity: 0; }

.tippy-box[data-animation=shift-away-extreme][data-state=hidden][data-placement^=top] {
  transform: translateY(20px); }

.tippy-box[data-animation=shift-away-extreme][data-state=hidden][data-placement^=bottom] {
  transform: translateY(-20px); }

.tippy-box[data-animation=shift-away-extreme][data-state=hidden][data-placement^=left] {
  transform: translateX(20px); }

.tippy-box[data-animation=shift-away-extreme][data-state=hidden][data-placement^=right] {
  transform: translateX(-20px); }

/* shift-toward-extreme */
.tippy-box[data-animation=shift-toward-extreme][data-state=hidden] {
  opacity: 0; }

.tippy-box[data-animation=shift-toward-extreme][data-state=hidden][data-placement^=top] {
  transform: translateY(-20px); }

.tippy-box[data-animation=shift-toward-extreme][data-state=hidden][data-placement^=bottom] {
  transform: translateY(20px); }

.tippy-box[data-animation=shift-toward-extreme][data-state=hidden][data-placement^=left] {
  transform: translateX(-20px); }

.tippy-box[data-animation=shift-toward-extreme][data-state=hidden][data-placement^=right] {
  transform: translateX(20px); }

/* perspective-extreme */
.tippy-box[data-animation=perspective-extreme][data-placement^=top] {
  transform-origin: bottom; }

.tippy-box[data-animation=perspective-extreme][data-placement^=top][data-state=visible] {
  transform: perspective(700px); }

.tippy-box[data-animation=perspective-extreme][data-placement^=top][data-state=hidden] {
  transform: perspective(700px) translateY(10px) rotateX(90deg); }

.tippy-box[data-animation=perspective-extreme][data-placement^=bottom] {
  transform-origin: top; }

.tippy-box[data-animation=perspective-extreme][data-placement^=bottom][data-state=visible] {
  transform: perspective(700px); }

.tippy-box[data-animation=perspective-extreme][data-placement^=bottom][data-state=hidden] {
  transform: perspective(700px) translateY(-10px) rotateX(-90deg); }

.tippy-box[data-animation=perspective-extreme][data-placement^=left] {
  transform-origin: right; }

.tippy-box[data-animation=perspective-extreme][data-placement^=left][data-state=visible] {
  transform: perspective(700px); }

.tippy-box[data-animation=perspective-extreme][data-placement^=left][data-state=hidden] {
  transform: perspective(700px) translateX(10px) rotateY(-90deg); }

.tippy-box[data-animation=perspective-extreme][data-placement^=right] {
  transform-origin: left; }

.tippy-box[data-animation=perspective-extreme][data-placement^=right][data-state=visible] {
  transform: perspective(700px); }

.tippy-box[data-animation=perspective-extreme][data-placement^=right][data-state=hidden] {
  transform: perspective(700px) translateX(-10px) rotateY(90deg); }

.tippy-box[data-animation=perspective-extreme][data-state=hidden] {
  opacity: .5; }

/*# sourceMappingURL=style.css.map */
