@charset "UTF-8";

/*!
Theme Name: Kinkisain
Author: Junichi Kitamura
Template:   cocoon-master
Version:    1.0.8
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*###### 共通設定 ######*/
* {
  -webkit-tap-highlight-color: transparent;
  /* 強調をなくす */
}

.clearfix:after {
  content: " ";
  display: block;
  clear: both;
}

.entry-content>*:not(.sub-title):not(.title-description):not(.main-title):not(.main-description):not(.sitemap):not(.more):not(.home-index-wrap):not(.online-payment-banner):not(.first-title):not(.title) {
  text-align: left;
}

.sitemap div.sitemap ul {
  text-align: left;
}

body:not(.recruit):not(.home):not(.company):not(.message):not(.interview):not(.item):not(.home-test) .entry-content h2 {
  position: relative;
  padding: .5em 1em;
  color: #3d3e3f;
  background: none;
  border: none;
  border-bottom: 6px solid #d61642;
  text-align: center;
  display: inline-block;
  font-size: 150%;
}

body:not(.recruit):not(.home):not(.company):not(.message):not(.interview):not(.item):not(.home-test) .entry-content h2:before {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #d61642;
  display: block;
}

body:not(.recruit):not(.home):not(.company):not(.message):not(.interview):not(.item):not(.home-test) .entry-content h2:after {
  content: "";
  position: absolute;
  bottom: -27px;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #f2f9fc;
  display: block;
}

.entry-content h3:not(.button):not(.popup) {
  border: none;
  border-bottom: solid 3px #f5c5d0;
  position: relative;
  font-size: 150%;
  font-weight: normal;
  padding-bottom: 0.2em;
  background: none;
  text-align: left;
  color: #303232;
}

.entry-content {
  overflow: hidden;
  text-align: center;

  & h3:not(.button):not(.popup):after {
    position: absolute;
    content: "";
    border-bottom: solid 6px #d61642;
    bottom: -6px;
    left: 0;
    width: 30%;
  }

  & h4 {
    font-size: 120%;
    border-width: 1px;
  }

  & h5 {
    font-weight: normal;
    font-size: 110%;
    border-width: 1px;
  }

  & p {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
  }
}

.main {
  background-color: transparent;
}

.more {
  background-color: #217a9f;
  color: #fff;
  text-align: center;
  padding: 10px;

  & a {
    color: #fff;
    display: block;

    & i {
      margin: .5em;
      color: #d4c32c;
    }
  }

  & i {
    color: #d4c32c;
  }
}

.more:hover {
  background-color: #2ca2d4;
}

.column-wrap {
  max-width: 1280px;
  margin: auto;
}

body:not(.home):not(.sitemap):not(.topics):not(.contact):not(.tokushoho):not(.privacy-policy):not(.home-test) .entry-title {
  text-align: center;
  opacity: 0;
  animation: appealRising 1.5s ease 1.5s alternate forwards;
  font-family: "Quicksand", sans-serif;
  font-weight: 300;
  /* Light 300 を指定 */
  color: #fff;
  font-size: 400%;
  letter-spacing: .05em;
  text-shadow: 8px 8px 3px #2ca2d4;
  border: none;
  padding: 0;
  margin-top: -260px;
  line-height: 90%;
}

body.sitemap .entry-title,
body.tokushoho .entry-title,
body.contact .entry-title,
body.privacy-policy .entry-title {
  text-align: center;
}

.sub-title,
.title-description {
  font-size: 80%;
  line-height: 130%;
  padding: 0;
  margin: 0;
  text-align: center;
  text-shadow: white 1px 1px 0px, white -1px 1px 0px,
    white 1px -1px 0px, white -1px -1px 0px;
}

.sub-title {
  font-weight: bold;
  color: #d61642;
  font-size: 90%;
}

body:not(.message):not(.interview):not(.job-info) .entry-content h2.first-title {
  text-align: center;
  color: #16516a;
  font-size: 180%;
  position: relative;
  background: none;
}

body:not(.job-info) h2.first-title span {
  display: inline-block;
  font-size: 120%;
  color: #217a9f;
}

form.wpcf7-form input:focus,
form.wpcf7-form textarea:focus,
form.wpcf7-form select:focus {
  outline-color: #2ca2d4;
}

/*** 目次 ***/
.toc {
  border-radius: 20px;
}

.toc-content {
  .toc-list>li:before {
    content: "\f138";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right: .5em;
  }

  .toc-list li li:before {
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    margin-right: .5em;
  }
}

/*** 波アニメーション ***/
/* ヘッダーアニメーション */
.header-container {
  position: relative;

  & canvas.header-canvas {
    position: absolute;
    bottom: -1px;
    width: 100%;
    height: 100px;
  }
}

body.home,
body.home-test {
  .header-container canvas.header-canvas {
    /*display: none;*/
  }
}

/* ヘッダーイン */
body.home-test .header,
body.home .header {
  position: relative;

  & canvas.header-in-canvas {
    position: absolute;
    bottom: -1px;
    width: 100%;
    height: 100px;
    z-index: 1;
  }
}

body:not(.home-test):not(.home) {
  .header canvas.header-in-canvas {
    /*display: none;*/
  }
}

/* アピールエリア */
.appeal {
  position: relative;

  & canvas.appeal-canvas {
    position: absolute;
    bottom: -1px;
    width: 100%;
    height: 100px;
  }
}

body.home,
body.home-test {
  .appeal-content {
    z-index: 1;
  }
}

body:not(.home):not(.home-test) .appeal canvas.appeal-canvas {
  display: none;
}

.appeal-title:before,
.appeal-title:after {
  content: "\f0d7";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}

.appeal-message .online-payment-banner img:not(:last-child) {
  margin-right: 1em;
}

/* コンテンツアニメーション */
.content {
  position: relative;
}

#entryContent {}

.content canvas {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100px;
  transform: scale(-1, -1);
  margin-top: -24px;
}

body:not(.home):not(.home-test) .content canvas.home-canvas {
  display: none;
}

body:not(.recruit):not(.home):not(.company):not(.message):not(.interview):not(.item):not(.home-test) .entry-content h2.first-title,
p.first-line {
  text-shadow: #f2f9fc 1px 1px 0px, #f2f9fc -1px 1px 0px,
    #f2f9fc 1px -1px 0px, #f2f9fc -1px -1px 0px;
}

/*** ページリンクボタン ***/
div.request-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 200%;
}

a.page-link-btn {
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  border-radius: 0.5rem;
  font-size: 1.5rem;
  padding: 1.5rem 3rem 1.5rem 2rem;

  .anchor-icon {
    display: none;
  }

  & i.fa {
    margin-right: 1rem;
  }
}

.job-info .request-wrap {
  margin-top: 40px;
}

a.page-link-btn.shipping {
  color: #fff;
  background-color: #2ca2d4;
}

a.page-link-btn.recruit {
  color: #fff;
  background-color: #d61642;
}

a.page-link-btn.contact {
  color: #fff;
  background-color: #ff8000;
}

a.page-link-btn.item-list {
  color: #fff;
  background-color: #d61642;
  border-radius: 2em;
}

a.page-link-btn.shipping:hover {
  background: #61b9df;
}

a.page-link-btn.contact:hover {
  background: #ffcc00;
}

a.page-link-btn.recruit:hover {
  background: #eb8ba1;
}

a.page-link-btn.item-list:hover {
  background: #eb8ba1;
}

a.page-link-btn:before {
  font-family: 'Font Awesome 5 Free';
  font-size: 1.6rem;
  line-height: 1;
  position: absolute;
  top: calc(50% - .8rem);
  right: 1rem;
  margin: 0;
  padding: 0;
  content: '\f054';
}

/*** 動画 ***/
.video-container {
  margin: 0px auto;
}

/*** 画像 ***/
.card-thumb img {
  border-radius: 50%;
}

body.archive .entry-card-thumb-image,
body.search .entry-card-thumb-image,
body.blog .entry-card-thumb-image {
  width: 150px;
  height: auto;
}

/*** リスト ***/
dl.dl-single-line dt {
  float: left;
  clear: left;
}

dl.check>dt {
  text-indent: -1.5em;
  padding-left: 1.5em;
}

dl.check>dt:before {
  content: "\f00c";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: .5em;
  color: #d61642;
}

ul.check {
  list-style: none;
  padding-left: 0;
}

ul.check>li {
  text-indent: -1.5em;
  padding-left: 1.5em;

  & * {
    text-indent: 0;
  }
}

ul.check>li:before {
  content: "\f00c";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: .5em;
  color: #d61642;
}

dl.number>dt {
  position: relative;
  padding-left: 2.5em;
  text-indent: -2.5em;
  line-height: 100%;
}

dl.number>dt:before,
ol.number>li dl dt:before {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 2em;
  height: 2em;
  border-radius: 50%;
  margin-right: .5em;
  padding-left: 0;
  text-indent: 0;
}

dl.number>dt:before {
  background-color: #f5c5d0;
  color: #d61642;
}

ol.number>li dl dt:before {
  background-color: #aa003e;
  color: #f6dcc5;
}

dl.number>dt:nth-of-type(1):before,
ol.number>li:nth-of-type(1) dl dt:before {
  content: "1";
}

dl.number>dt:nth-of-type(2):before,
ol.number>li:nth-of-type(2) dl dt:before {
  content: "2";
}

dl.number>dt:nth-of-type(3):before,
ol.number>li:nth-of-type(3) dl dt:before {
  content: "3";
}

dl.number>dt:nth-of-type(4):before,
ol.number>li:nth-of-type(4) dl dt:before {
  content: "4";
}

dl.number>dt:nth-of-type(5):before,
ol.number>li:nth-of-type(5) dl dt:before {
  content: "5";
}

dl.number>dt:nth-of-type(6):before,
ol.number>li:nth-of-type(6) dl dt:before {
  content: "6";
}

dl.number>dt:nth-of-type(7):before,
ol.number>li:nth-of-type(7) dl dt:before {
  content: "7";
}

/*###### コンタクトフォーム ######*/
dl dt b {
  color: #d61642;
}

dl.inquiry {
  & dt {
    font-weight: bold;
  }

  & dd {
    margin-bottom: 10px;
  }
}

/*** 問い合わせフォーム ***/
dl#Inquiry,
dl.inquiry {
  & dd {
    margin-left: 13.5em;

    & span[data-name="your-postcode-n"] input,
    & span[data-name="your-pref-n"] select,
    & span[data-name="your-address-n"] input,
    & span[data-name="your-tel-n"] input,
    & span[data-name="your-number-n"] input,
    & span[data-name="your-postcode"] input,
    & span[data-name="your-pref"] select,
    & span[data-name="your-tel"] input,
    & span[data-name="your-number"] input,
    & span[data-name="your-postcode2"] input,
    & span[data-name="your-pref2"] select,
    & span[data-name="your-tel2"] input,
    & span[data-name="your-number2"] input,
    & span[data-name="your-age"] input {
      width: 50%;
      min-width: 18em;
    }
  }

  & dt {
    float: left;
    clear: left;
    width: 13em;
    text-align: right;
  }
}

.inquiry-wrap {
  .jutaku-visible.hide {
    display: none;
  }

  .cider-visible.hide {
    display: none;
  }

  .wpcf7-file {
    /*「選択されていません（選択後はファイル名）」のスタイル*/
    font-size: 12px;
  }

  .wpcf7-file::file-selector-button {
    /*「ファイルを選択」ボタンのスタイル*/
    font-weight: bold;
    color: white;
    background: #d61642;
    font-size: 14px;
    border: 0;
    border-radius: 10em;
    padding: 8px 16px;
    text-align: center;
    cursor: pointer;
  }

  .file-annotation {
    font-size: 12px;
    display: inline-block;
  }
}

/*** 採用募集フォーム ***/
dl.inquiry.entry-form dd {
  & span {

    & input:not([type="radio"]):not([type="checkbox"]),
    & select {
      width: 50%;
      min-width: 18em;
    }
  }

  & span.explanation {
    display: inline-block;
  }
}

body:not(.usces-member) p.submit {
  width: 10em;
  margin-left: auto;
  margin-right: auto;
}

p.submit {
  & input[type="submit"].wpcf7-submit {
    border-radius: 40px;
    border: none;
    font-weight: bold;
    font-size: 100%;
    background: #2cd43c;
    box-shadow: 0 3px 1px #219f2d;
    color: #fff;
    transition: 0.3s;
    padding: 1em;
  }

  & input[type="submit"].wpcf7-submit:before {
    font-family: "Font Awesome 5 Free";
    content: "\f0e0";
    font-weight: 900;
  }

  & input[type="submit"].wpcf7-submit:hover {
    background: #61df6d;
    box-shadow: 0 -3px 1px #219f2d;
    transform: translateY(3px);
  }

  & input[type="submit"].wpcf7-submit:focus {
    outline: 0;
    background: #2cd43c;
  }
}

dl.inquiry {
  & span[data-name="your-category-n"] .wpcf7-list-item.hide {
    display: none;
  }

  & span[data-name="your-category2"] .wpcf7-list-item.hide {
    display: none;
  }

  & span[data-name="your-category"] .wpcf7-list-item.hide {
    display: none;
  }
}

/*** 問い合わせフォームへのリンクボタン ***/
.header-in {
  position: relative;
  width: 100%;
  height: 100%;

  .tagline {
    text-shadow: 1px 1px 10px rgba(30, 115, 190, 0.7), -1px -1px 10px rgba(30, 115, 190, 0.7),
      -1px 1px 10px rgba(30, 115, 190, 0.7), 1px -1px 10px rgba(30, 115, 190, 0.7),
      0px 1px 10px rgba(30, 115, 190, 0.7), 0 -1px 10px rgba(30, 115, 190, 0.7),
      -1px 0 10px rgba(30, 115, 190, 0.7), 1px 0 10px rgba(30, 115, 190, 0.7);
    font-weight: 500;
    white-space: nowrap;
    text-overflow: ellipsis;
    z-index: 1;
  }
}

.logo-header {
  position: relative;
}

body:not(.home):not(.home-test) .header-site-logo-image {
  opacity: 0;
  animation: logoFalling 1.5s ease 0.5s alternate forwards;
  max-width: 200px;
  max-height: auto;
}

body.home,
body.home-test {
  .header-site-logo-image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
  }

  .header-site-logo-image.v-mark {
    opacity: 0;
    transform: scale(0);
    transform-origin: center bottom;
    animation: logoTransformV 1.0s ease 0.5s alternate forwards;
  }

  .header-site-logo-image.sain-mark {
    opacity: 0;
    transform: scale(0);
    animation: logoTransformSain 1.0s ease 1.0s alternate forwards;
  }

  .header-site-logo-image.text {
    position: absolute;
    top: 0;
    opacity: 0;
    transform: translateY(-20px);
    animation: logoTransformText 1.5s ease 1.5s alternate forwards;
    margin: auto;
    margin-top: 65px;
  }
}

.logo-header:before {
  left: 0;
}

.logo-header:after {
  right: 0;
}

body.topics,
body.category,
body.search,
body.error404,
body.blog {
  .header-in {
    .tagline {
      margin-top: 50px;
    }
  }
}

body:not(.home):not(.home-test) .header-in .tagline {
  display: none;
}

body.topics,
body.category-topics,
body.category-kiraribito,
body.category-interview,
body.category-item,
body.category-itemreco,
body.category-recruit,
body.usces-cart,
body.usces-member,
body.category,
body.archive,
body.search,
body.error404,
body.blog,
body.sitemap,
body.contact,
body.tokushoho,
body.privacy-policy {
  .header-in {
    min-height: 200px;
  }
}

/*** ナビゲーション ***/
.navi {
  position: fixed;
  top: 0;
  z-index: 2;
  width: 100%;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.4);
  transition: top 0.5s ease;
  /* topの変更をアニメーション20240930追加 */
}

.navi-in {

  /* メニューボタン */
  .menu-header>li:not(:first-child):not(#menu-item-13881) {
    margin: 3px;
  }

  .menu-header {
    background-color: transparent;

    & li:not(:first-child):not(#menu-item-13881) {
      background-color: transparent;
      min-height: 46px;

      & a {
        border-radius: 30px;
        overflow: hidden;
        background-color: #2ca2d4;
        padding-top: 3px;

        .caption-wrap {
          position: relative;
          z-index: 1;
          font-weight: bold;
        }
      }

      & ul.sub-menu {
        background-color: transparent !important;
      }

      & a:before,
      & ul.sub-menu li a:before,
      & a:after,
      & ul.sub-menu li a:after {
        position: absolute;
        content: "";
        -webkit-transition: all .3s linear;
        transition: all .3s linear;
        display: block;
        width: 100%;
        height: 0px;
        box-sizing: border-box;
      }

      & a:before,
      & ul.sub-menu li a:before {
        border: 30px solid transparent;
        border-top-color: #61b9df;
        top: 0;
        left: 0;
        transform: translate(-50%, 0);
      }

      & ul.sub-menu li.current-menu-item>a:before,
      & ul.sub-menu li.current-menu-ancestor>a:before {
        transform: translate(50%, -14px) rotate(180deg);
      }

      & a:after,
      & ul.sub-menu li a:after {
        border: 30px solid transparent;
        border-bottom-color: #61b9df;
        bottom: 0;
        right: 0;
        transform: translate(50%, 0);
      }

      & ul.sub-menu li.current-menu-item>a:after,
      & ul.sub-menu li.current-menu-ancestor>a:after {
        transform: translate(-50%, 0);
      }

      & ul.sub-menu>li:hover>a:before {
        transform: translate(50%, -14px) rotate(180deg);
      }

      & ul.sub-menu>li:hover>a:after {
        transform: translate(-50%, 0);
      }
    }

    & li#menu-item-13881 {
      & a {
        background-color: #2ca2d4;
      }
    }

    & li:not(:first-child):not(#menu-item-13881):hover>a:before,
    & li.current-menu-item:not(:first-child):not(#menu-item-13881)>a:before,
    & li.current-menu-ancestor:not(:first-child):not(#menu-item-13881)>a:before {
      transform: translate(50%, -14px) rotate(180deg);
    }

    & li:not(:first-child):not(#menu-item-13881):hover>a:after,
    & li.current-menu-item:not(:first-child):not(#menu-item-13881)>a:after,
    & li.current-menu-ancestor:not(:first-child):not(#menu-item-13881)>a:after {
      transform: translate(-50%, 0);
    }
  }

  .menu-header>li:first-child,
  .menu-header>li#menu-item-13881 {
    background-color: transparent;
    margin: 3px;
    min-height: 46px;
    width: 46px;
    max-width: 46px;

    & a {
      display: flex;
      justify-content: center;
      align-items: center;
      border-radius: 50%;
      overflow: hidden;

      .caption-wrap {
        position: relative;
        z-index: 1;
        font-weight: bold;
      }
    }

    & ul.sub-menu {
      background-color: transparent !important;
    }
  }

  .menu-header>li:first-child {
    & a {
      .caption-wrap {
        width: 40px;
        height: 40px;

        .item-label,
        .item-description {
          display: none;
        }
      }
    }
  }
}

/* ナビカートボタン */
#navi {
  #navi-in.navi-in>ul>li#menu-item-13881 .fa-shopping-cart {
    font-size: 24px;
  }
}

.webp #navi .navi-in>ul>li:first-child a .caption-wrap {
  background-image: url(https://kinkisain.co.jp/img/sain-mark-40.png.webp);
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
}

.no-webp #navi .navi-in>ul>li:first-child a .caption-wrap,
html:not(.webp) #navi .navi-in>ul>li:first-child a .caption-wrap {
  background-image: url(https://kinkisain.co.jp/img/sain-mark-40.png);
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
}

/*** フッター ***/
.footer-bottom-logo {
  .logo-image {
    max-width: 200px;
  }

  & img {
    height: auto;
  }
}

.copyright {
  font-family: Verdana, "Droid Sans", sans-serif;
}

.navi-footer-in {
  & ul.menu-footer {
    & li {
      min-height: 30px;
      display: flex;
      align-items: center;

      & a {
        border-left: 1px solid #fff;
      }
    }

    & li:last-child a {
      border-right: 1px solid #fff;
    }
  }
}

.navi-footer-in>.menu-footer li {
  border-left: none;
}

.navi-footer-in>.menu-footer li:last-child {
  border-right: none;
}

/*** SNS ***/
.sns-share-message::before,
.sns-share-message::after,
.sns-follow-message::before,
.sns-follow-message::after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f72f";
  padding-right: .5em;
  padding-left: .5em;
  display: inline-block;
  opacity: 0.5;
}

.sns-share-message::before,
.sns-follow-message::before {
  transform: rotate(-90deg);
}

/*** TablePress ***/
table.tablepress {
  & th {
    text-align: center;
  }

  & td {
    background-color: #f9fcfe;
  }
}

/*** 検索窓 ***/
.search-box {
  .search-edit {
    border-radius: 20px;
  }

  .search-edit:focus {
    outline-color: #2ca2d4;
  }
}

/*** 本文 ***/
.clearfix.large-photo>img,
.clearfix.large-photo>p img,
.clearfix.large-photo>a img,
.clearfix.large-photo>figure {
  max-width: 50%;
  height: auto;
}

/*** コメント ***/
body.interview .comment-area {
  display: none;
}

/*** バナー ***/
.banner {
  text-align: center;
}

/*###### トップページ ######*/
/*** ヘッダー ***/
.home.page,
.home-test.page {
  .header {
    position: relative;
  }
}

#homeHeaderBg {
  width: 100%;
  overflow: hidden;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

/* ヘッダー画像 */
.products .header {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.item-list .header {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center left;
}

.shipping .header {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center right;
}

.webp .products .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-products-20230801.jpg.webp);
}

.no-webp .products .header,
html:not(.webp) .products .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-products-20230801.jpg);
}

.webp .item-list .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-shop-20230801.jpg.webp);
}

.no-webp .item-list .header,
html:not(.webp) .item-list .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-shop-20230801.jpg);
}

.webp .shipping .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-shopping-guide-20230801.jpg.webp);
}

.no-webp .shipping .header,
html:not(.webp) .shipping .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-shopping-guide-20230801.jpg);
}

.store .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-himejijo.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.postid-675 .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-himejijocider-20220721.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.himeji-yuzu-cider .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-himeji-yuzu-cider.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.postid-1146 .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-himejiyuzucider-20220726.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom center;
}

.unkai-yuzu-cider .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-unkai-yuzu-cider.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.postid-421 .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-unkaiyuzucider-20220722.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.postid-1887 .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-sawayakasudachi-20220802.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom center;
}

.postid-8732 .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-ippukubottle-20220721.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: bottom center;
}

.postid-274 .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-ryokucha-pet-20220801.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.postid-378 .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-powersport-20220722.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

no-webp .postid-16364 .header,
html:not(.webp) .postid-16364 .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-aquaboost-20230801.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.webp .postid-16364 .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-aquaboost-20230801.jpg.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.environment .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-environment-policy.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.company .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-company-20220613.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.trust .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-trust-20220622.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.originalcider .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-original-cider-20220803.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.quality .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-quality.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.recruit .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-recruitment_20250212.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.message .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-message.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top center;
}

.interviews .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-interview_20250212.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.job-info .header {
  background-image: url(https://kinkisain.co.jp/img/header-img-entry.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.postid-1930 .header {
  background-image: url(https://kinkisain.co.jp/img/interview/interview7.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 80%;
}

.postid-1948 .header {
  background-image: url(https://kinkisain.co.jp/img/interview/interview5.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.postid-1976 .header {
  background-image: url(https://kinkisain.co.jp/img/interview/interview3.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.postid-1979 .header {
  background-image: url(https://kinkisain.co.jp/img/interview/interview2.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.postid-1981 .header {
  background-image: url(https://kinkisain.co.jp/img/interview/interview1.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.postid-2150 .header {
  background-image: url(https://kinkisain.co.jp/img/interview/interview8.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.postid-2165 .header {
  background-image: url(https://kinkisain.co.jp/img/interview/interview9.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.postid-2176 .header {
  background-image: url(https://kinkisain.co.jp/img/interview/interview10.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.postid-3156 .header {
  background-image: url(https://kinkisain.co.jp/img/interview/interview11.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.postid-7511 .header {
  background-image: url(https://kinkisain.co.jp/img/interview/interview12.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.postid-2357 .header {
  background-image: url(https://kinkisain.co.jp/img/kiraribito/kiraribito1.jpg);
  background-repeat: no-repeat;
  background-size: auto;
  background-position: 50% 60%;
}

.postid-2575 .header {
  background-image: url(https://kinkisain.co.jp/img/kiraribito/kiraribito2.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

#homeHeaderBg {

  & video,
  & img {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: auto;
    /* 高さ優先で幅を自動調整 */
    height: auto;
    /* 幅優先で高さを自動調整 */
    min-width: 100vw;
    /* ウィンドウ幅を常に満たす */
    min-height: 100vh;
    /* ウィンドウ高さを常に満たす */
    max-width: none;
    max-height: none;
    object-fit: cover;
    /* アスペクト比を維持してコンテナ全体をカバー */
    box-sizing: border-box;
    /* パディングやボーダーを含めたサイズ調整 */
  }

  & video {
    /* スライドショー */
    display: block;
  }

  & img {
    /* スライドショー */
    animation: slideShow 48s infinite;
    opacity: 0;
    display: none;
  }

  & img:nth-of-type(1) {
    animation-delay: 0s;
  }

  & img:nth-of-type(2) {
    animation-delay: 8s;
  }

  & img:nth-of-type(3) {
    animation-delay: 16s;
  }

  & img:nth-of-type(4) {
    animation-delay: 24s;
  }

  & img:nth-of-type(5) {
    animation-delay: 32s;
  }

  & img:nth-of-type(6) {
    animation-delay: 40s;
  }
}

/*** grid layout ***/
.grid-container {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(auto-fit, 1fr);

  .grid-item {
    display: flex;
    place-items: center;

    & a {
      display: block;
      text-decoration: none;
      width: 100%;

      & img {
        display: block;
      }
    }
  }
}

ul.grid-container {
  margin: 0;
  padding: 0;
  list-style-type: none;
  margin-bottom: 40px;

  .grid-item {
    margin: 0;
    padding: 0;
  }
}

ul.grid-container.product {
  margin: 0;
  padding: 0;
  margin-bottom: 20px;
}

.home,
.home-test {
  & ul.grid-container {
    margin: 0;
    padding: 0;
  }
}

.grid-container.zoom .grid-item img,
.zoom img {
  width: 100%;
  height: auto;
  display: block;
  transition-duration: 0.3s;
}

.grid-container.zoom .grid-item:hover img,
.grid-item:hover .zoom img {
  transform: scale(1.1);
  opacity: 0.7;
}

.grid-item:hover .vibration img {
  animation: vibration .1s infinite;
}

/*** flex box ***/
body .flex-container {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style-type: none;
}

.flex-container {
  .flex-item {
    height: auto;
    box-sizing: border-box;
    position: relative;
    text-align: center;
    display: block;

    & a {
      display: block;
      text-decoration: none;
      width: 100%;

      & img {
        display: block;
      }
    }

    & span {
      display: block;
    }
  }

  .inner {
    display: block;
    position: relative;
    margin: 0 auto 0;
    box-sizing: border-box;
    padding: 25px 8.33333%;
    width: 100%;
    background-color: white;
    text-decoration: none;
    color: #444;
  }
}

.flex-container.zoom {
  .flex-item img {
    width: 100%;
    height: auto;
    display: block;
    transition-duration: 0.3s;
  }

  .flex-item:hover img {
    transform: scale(1.1);
    transition-duration: 0.3s;
    opacity: 0.7;
  }
}

/*** Feather Light ***/
.featherlight-content {
  background-color: transparent !important;
}

.infotext {
  color: #fff;

  & dl {
    margin: 0;

    & dd dl {
      & dt {
        clear: left;
        float: left;
        width: 8em;
        text-align: right;
      }

      & dd {
        margin-left: 8em;
      }
    }
  }

  & p span,
  & span span {
    display: inline-block;
  }
}

/*###### ホーム ######*/
.home.page,
.home-test.page {
  .main {
    text-align: center;
  }

  .entry-title {
    font-size: 200%;
    color: #d61642;
    font-weight: normal;
    text-shadow: 0em .05em .05em rgba(150, 180, 220, 0.8);
    font-family: initial;

    & span {
      font-size: 200%;
      color: #29a2d4;
      display: inline-block;
      position: relative;
      top: 0;
      text-shadow: none;
      font-family: initial;
      animation-name: textWave;
      animation-duration: 2s;
      animation-timing-function: ease-in-out;
      animation-iteration-count: infinite;
      animation-direction: alternate;
    }

    & span:nth-of-type(2) {
      animation-delay: 0.5s;
    }

    & span:nth-of-type(3) {
      animation-delay: 1s;
    }

    & span:nth-of-type(4) {
      animation-delay: 1.5s;
    }

    & span:nth-of-type(5) {
      animation-delay: 2s;
    }

    & span:nth-of-type(6) {
      animation-delay: 2.5s;
    }

    & span:nth-of-type(7) {
      animation-delay: 3s;
    }

    & span:nth-of-type(8) {
      animation-delay: 3.5s;
    }

    & span:nth-of-type(9) {
      animation-delay: 4s;
    }

    & span:nth-of-type(10) {
      animation-delay: 4.5s;
    }

    & span:nth-of-type(11) {
      animation-delay: 5s;
    }

    & span:nth-of-type(12) {
      animation-delay: 5.5s;
    }

    & span:nth-of-type(13) {
      animation-delay: 6s;
    }

    & span:nth-of-type(14) {
      animation-delay: 6.5s;
    }
  }
}

/*** grid layout ***/
.grid-container.button {
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  line-height: 0;
  place-items: center;

  .grid-item {
    overflow: hidden;

    & a {
      display: block;
      text-decoration: none;
      overflow: hidden;
      background: #fff;
      margin: auto;
      position: relative;
    }

    & span.item-wrap {
      position: absolute;
      display: flex;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      align-items: center;
      justify-content: center;
      flex-direction: column;
      line-height: 110%;
      transition: all .3s;
      margin-left: 1em;
      margin-right: 1em;
    }

    & span.item-title {
      font-family: FuturaLTPro, Futura, San Francisco, Helvetica Neue, Arial, sans-serif;
      font-weight: bold;
      color: #fff100;
      z-index: 1;
      text-shadow: 0.1em 0.1em 0.05em #1f799f;
      letter-spacing: .1em;
      font-size: 150%;
      line-height: 100%;
    }

    & span.item-description {
      color: #f2f9fc;
      text-shadow: 0.1em 0.1em 0.05em #303232;
      z-index: 1;
    }
  }
}

/*** 会社概要ランダム ***/
.company-data-wrap {
  background-color: #d51542;
  padding: 20px;
  display: flex;
  justify-content: center;
  margin-bottom: 20px;
  /*opacity: 0;*/
  transition: all 0.3s;

  .item {
    position: relative;
    width: 100%;
    max-width: 1280px;
  }

  .company-img-wrap {
    width: 50%;
    float: left;
    clear: left;
    box-sizing: border-box;
    background-color: #fff;
    border: 8px solid #d51542;

    & img {
      display: block;
    }
  }

  .title {
    text-transform: uppercase;
    position: absolute;
    background-color: transparent;
    width: 50%;
    margin: 0;
    padding: 0;
    padding-left: 20px;
    margin-left: 50%;
    font-size: 80px;
    line-height: 100%;
    font-family: FuturaLTPro, Futura, San Francisco, Helvetica Neue, Arial, sans-serif;
    color: #fff;
  }

  .text-wrap {
    width: 50%;
    height: 100%;
    margin-left: 50%;
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
    color: #fff;
    line-height: 130%;
    display: table;
    font-size: 90%;

    .text {
      display: table-cell;
      vertical-align: bottom;
    }
  }
}

.company-data-wrap.fixed {
  position: fixed;

  .more.company {
    z-index: 2;
  }
}

.company-data-wrap.static {
  position: static;
}

/*** YouTubeバナー ***/
.youtube-banner-sprite {
  margin-top: 20px;
  margin-bottom: 20px;
}

.youtube-banner-sprite a {
  display: block;
  position: relative;
  z-index: 1;
  overflow: hidden;
  text-decoration: none;
}

.youtube-banner-sprite img.cover-img {
  display: block;
  width: 100%;
}

.youtube-banner-sprite img.sprite-img {
  display: block;
  position: absolute;
  top: 7.75%;
  left: 55%;
  z-index: -1;
  width: 225%;
  height: auto;
  max-width: none;
  animation-name: youtube-banner-sprite;
  animation-duration: 6.0s;
  animation-timing-function: steps(6, end);
  animation-iteration-count: infinite;
  animation-fill-mode: both;
}

.youtube-banner-sprite span {
  font-family: FuturaLTPro, Futura, San Francisco, Helvetica Neue, Arial, sans-serif;
  font-weight: bold;
  color: #ea0000;
  font-size: 110%;
}

.youtube-banner-sprite span.fa,
.youtube-banner-sprite span.fas {
  display: none;
}

/*** TOPICS ***/
#topicsList {}

#topicsList a {}

dl.my-info {
  text-align: left;
  margin-left: 20px;
  margin-right: 20px;
}

dl.my-info.dl-single-line a {}

dl.my-info.dl-single-line a:hover {}

dl.my-info dt {
  width: 6em;
  color: #371f25;
}

dl.my-info dd {
  margin-left: 6.5em;
}

/* ホーム */
.home,
.home-test {
  .awa-wrap {
    position: relative;
    overflow: hidden;
  }
}

.home,
.home-test {
  .awa-wrap .field {
    display: inline-block;
    position: absolute;
    bottom: -20px;
    left: 0;
    z-index: 1;
  }
}

/* 泡アニメーション */
.home .field {
  overflow: hidden;
  width: 100%;
}

.home .bubble {
  position: absolute;
  /*bottom: -20%;*/
  bottom: 0;
  left: 50%;
}

.home .bubble .item {
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 100%;
  box-shadow: 0px 0px 15px 0px rgba(255, 255, 255, 0.6) inset;
  -webkit-box-shadow: 0px 0px 15px 0px rgba(255, 255, 255, 0.6) inset;
  position: relative;
}

.home .bubble .item:after {
  content: "";
  display: block;
  width: 20%;
  height: 20%;
  border-radius: 100%;
  background: rgba(255, 255, 255, 0.6);
  position: absolute;
  right: 15%;
  top: 15%;
  transform: rotateZ(45deg) scaleY(0.8);
  -webkit-transform: rotateZ(45deg) scaleY(0.8);
}

.home .stretch0 {
  animation: stretch 2s ease 0s infinite normal;
  -webkit-animation: stretch 2s ease 0s infinite normal;
}

.home .shake0 {
  animation: shake 2s ease 0s infinite normal;
  -webkit-animation: shake 2s ease 0s infinite normal;
}

.home .move0 {
  animation: move 5s cubic-bezier(0.47, 0, 0.745, 0.715) 0s infinite normal;
  -webkit-animation: move 5s cubic-bezier(0.47, 0, 0.745, 0.715) 0s infinite normal;
}

.home .pos0 {
  left: 0%;
}

.home .scale0 {
  transform: scale(0);
  -webkit-transform: scale(0);
}

.home .stretch1 {
  animation: stretch 2.2s ease 0s infinite normal;
  -webkit-animation: stretch 2.2s ease 0s infinite normal;
}

.home .shake1 {
  animation: shake 2.2s ease 0s infinite normal;
  -webkit-animation: shake 2.2s ease 0s infinite normal;
}

.home .move1 {
  animation: move 5.2s cubic-bezier(0.47, 0, 0.745, 0.715) 0.2s infinite normal;
  -webkit-animation: move 5.2s cubic-bezier(0.47, 0, 0.745, 0.715) 0.2s infinite normal;
}

.home .pos1 {
  left: 2%;
}

.home .scale1 {
  transform: scale(0.1);
  -webkit-transform: scale(0.1);
}

.home .stretch2 {
  animation: stretch 2.4s ease 0s infinite normal;
  -webkit-animation: stretch 2.4s ease 0s infinite normal;
}

.home .shake2 {
  animation: shake 2.4s ease 0s infinite normal;
  -webkit-animation: shake 2.4s ease 0s infinite normal;
}

.home .move2 {
  animation: move 5.4s cubic-bezier(0.47, 0, 0.745, 0.715) 0.4s infinite normal;
  -webkit-animation: move 5.4s cubic-bezier(0.47, 0, 0.745, 0.715) 0.4s infinite normal;
}

.home .pos2 {
  left: 4%;
}

.home .scale2 {
  transform: scale(0.2);
  -webkit-transform: scale(0.2);
}

.home .stretch3 {
  animation: stretch 2.6s ease 0s infinite normal;
  -webkit-animation: stretch 2.6s ease 0s infinite normal;
}

.home .shake3 {
  animation: shake 2.6s ease 0s infinite normal;
  -webkit-animation: shake 2.6s ease 0s infinite normal;
}

.home .move3 {
  animation: move 5.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6s infinite normal;
  -webkit-animation: move 5.6s cubic-bezier(0.47, 0, 0.745, 0.715) 0.6s infinite normal;
}

.home .pos3 {
  left: 6%;
}

.home .scale3 {
  transform: scale(0.3);
  -webkit-transform: scale(0.3);
}

.home .stretch4 {
  animation: stretch 2.8s ease 0s infinite normal;
  -webkit-animation: stretch 2.8s ease 0s infinite normal;
}

.home .shake4 {
  animation: shake 2.8s ease 0s infinite normal;
  -webkit-animation: shake 2.8s ease 0s infinite normal;
}

.home .move4 {
  animation: move 5.8s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s infinite normal;
  -webkit-animation: move 5.8s cubic-bezier(0.47, 0, 0.745, 0.715) 0.8s infinite normal;
}

.home .pos4 {
  left: 8%;
}

.home .scale4 {
  transform: scale(0.4);
  -webkit-transform: scale(0.4);
}

.home .stretch5 {
  animation: stretch 3s ease 0s infinite normal;
  -webkit-animation: stretch 3s ease 0s infinite normal;
}

.home .shake5 {
  animation: shake 3s ease 0s infinite normal;
  -webkit-animation: shake 3s ease 0s infinite normal;
}

.home .move5 {
  animation: move 6s cubic-bezier(0.47, 0, 0.745, 0.715) 1s infinite normal;
  -webkit-animation: move 6s cubic-bezier(0.47, 0, 0.745, 0.715) 1s infinite normal;
}

.home .pos5 {
  left: 10%;
}

.home .scale5 {
  transform: scale(0.5);
  -webkit-transform: scale(0.5);
}

.home .stretch6 {
  animation: stretch 3.2s ease 0s infinite normal;
  -webkit-animation: stretch 3.2s ease 0s infinite normal;
}

.home .shake6 {
  animation: shake 3.2s ease 0s infinite normal;
  -webkit-animation: shake 3.2s ease 0s infinite normal;
}

.home .move6 {
  animation: move 6.2s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s infinite normal;
  -webkit-animation: move 6.2s cubic-bezier(0.47, 0, 0.745, 0.715) 1.2s infinite normal;
}

.home .pos6 {
  left: 12%;
}

.home .scale6 {
  transform: scale(0.6);
  -webkit-transform: scale(0.6);
}

.home .stretch7 {
  animation: stretch 3.4s ease 0s infinite normal;
  -webkit-animation: stretch 3.4s ease 0s infinite normal;
}

.home .shake7 {
  animation: shake 3.4s ease 0s infinite normal;
  -webkit-animation: shake 3.4s ease 0s infinite normal;
}

.home .move7 {
  animation: move 6.4s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4s infinite normal;
  -webkit-animation: move 6.4s cubic-bezier(0.47, 0, 0.745, 0.715) 1.4s infinite normal;
}

.home .pos7 {
  left: 14%;
}

.home .scale7 {
  transform: scale(0.7);
  -webkit-transform: scale(0.7);
}

.home .stretch8 {
  animation: stretch 3.6s ease 0s infinite normal;
  -webkit-animation: stretch 3.6s ease 0s infinite normal;
}

.home .shake8 {
  animation: shake 3.6s ease 0s infinite normal;
  -webkit-animation: shake 3.6s ease 0s infinite normal;
}

.home .move8 {
  animation: move 6.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.6s infinite normal;
  -webkit-animation: move 6.6s cubic-bezier(0.47, 0, 0.745, 0.715) 1.6s infinite normal;
}

.home .pos8 {
  left: 16%;
}

.home .scale8 {
  transform: scale(0.8);
  -webkit-transform: scale(0.8);
}

.home .stretch9 {
  animation: stretch 3.8s ease 0s infinite normal;
  -webkit-animation: stretch 3.8s ease 0s infinite normal;
}

.home .shake9 {
  animation: shake 3.8s ease 0s infinite normal;
  -webkit-animation: shake 3.8s ease 0s infinite normal;
}

.home .move9 {
  animation: move 6.8s cubic-bezier(0.47, 0, 0.745, 0.715) 1.8s infinite normal;
  -webkit-animation: move 6.8s cubic-bezier(0.47, 0, 0.745, 0.715) 1.8s infinite normal;
}

.home .pos9 {
  left: 18%;
}

.home .scale9 {
  transform: scale(0.9);
  -webkit-transform: scale(0.9);
}

.home .stretch10 {
  animation: stretch 4s ease 0s infinite normal;
  -webkit-animation: stretch 4s ease 0s infinite normal;
}

.home .shake10 {
  animation: shake 4s ease 0s infinite normal;
  -webkit-animation: shake 4s ease 0s infinite normal;
}

.home .move10 {
  animation: move 7s cubic-bezier(0.47, 0, 0.745, 0.715) 2s infinite normal;
  -webkit-animation: move 7s cubic-bezier(0.47, 0, 0.745, 0.715) 2s infinite normal;
}

.home .pos10 {
  left: 20%;
}

.home .scale10 {
  transform: scale(1);
  -webkit-transform: scale(1);
}

.home .stretch11 {
  animation: stretch 4.2s ease 0s infinite normal;
  -webkit-animation: stretch 4.2s ease 0s infinite normal;
}

.home .shake11 {
  animation: shake 4.2s ease 0s infinite normal;
  -webkit-animation: shake 4.2s ease 0s infinite normal;
}

.home .move11 {
  animation: move 7.2s cubic-bezier(0.47, 0, 0.745, 0.715) 2.2s infinite normal;
  -webkit-animation: move 7.2s cubic-bezier(0.47, 0, 0.745, 0.715) 2.2s infinite normal;
}

.home .pos11 {
  left: 22%;
}

.home .scale11 {
  transform: scale(1.1);
  -webkit-transform: scale(1.1);
}

.home .stretch12 {
  animation: stretch 4.4s ease 0s infinite normal;
  -webkit-animation: stretch 4.4s ease 0s infinite normal;
}

.home .shake12 {
  animation: shake 4.4s ease 0s infinite normal;
  -webkit-animation: shake 4.4s ease 0s infinite normal;
}

.home .move12 {
  animation: move 7.4s cubic-bezier(0.47, 0, 0.745, 0.715) 2.4s infinite normal;
  -webkit-animation: move 7.4s cubic-bezier(0.47, 0, 0.745, 0.715) 2.4s infinite normal;
}

.home .pos12 {
  left: 24%;
}

.home .scale12 {
  transform: scale(1.2);
  -webkit-transform: scale(1.2);
}

.home .stretch13 {
  animation: stretch 4.6s ease 0s infinite normal;
  -webkit-animation: stretch 4.6s ease 0s infinite normal;
}

.home .shake13 {
  animation: shake 4.6s ease 0s infinite normal;
  -webkit-animation: shake 4.6s ease 0s infinite normal;
}

.home .move13 {
  animation: move 7.6s cubic-bezier(0.47, 0, 0.745, 0.715) 2.6s infinite normal;
  -webkit-animation: move 7.6s cubic-bezier(0.47, 0, 0.745, 0.715) 2.6s infinite normal;
}

.home .pos13 {
  left: 26%;
}

.home .scale13 {
  transform: scale(1.3);
  -webkit-transform: scale(1.3);
}

.home .stretch14 {
  animation: stretch 4.8s ease 0s infinite normal;
  -webkit-animation: stretch 4.8s ease 0s infinite normal;
}

.home .shake14 {
  animation: shake 4.8s ease 0s infinite normal;
  -webkit-animation: shake 4.8s ease 0s infinite normal;
}

.home .move14 {
  animation: move 7.8s cubic-bezier(0.47, 0, 0.745, 0.715) 2.8s infinite normal;
  -webkit-animation: move 7.8s cubic-bezier(0.47, 0, 0.745, 0.715) 2.8s infinite normal;
}

.home .pos14 {
  left: 28%;
}

.home .scale14 {
  transform: scale(1.4);
  -webkit-transform: scale(1.4);
}

.home .stretch15 {
  animation: stretch 5s ease 0s infinite normal;
  -webkit-animation: stretch 5s ease 0s infinite normal;
}

.home .shake15 {
  animation: shake 5s ease 0s infinite normal;
  -webkit-animation: shake 5s ease 0s infinite normal;
}

.home .move15 {
  animation: move 8s cubic-bezier(0.47, 0, 0.745, 0.715) 3s infinite normal;
  -webkit-animation: move 8s cubic-bezier(0.47, 0, 0.745, 0.715) 3s infinite normal;
}

.home .pos15 {
  left: 30%;
}

.home .scale15 {
  transform: scale(1.5);
  -webkit-transform: scale(1.5);
}

.home .stretch16 {
  animation: stretch 5.2s ease 0s infinite normal;
  -webkit-animation: stretch 5.2s ease 0s infinite normal;
}

.home .shake16 {
  animation: shake 5.2s ease 0s infinite normal;
  -webkit-animation: shake 5.2s ease 0s infinite normal;
}

.home .move16 {
  animation: move 8.2s cubic-bezier(0.47, 0, 0.745, 0.715) 3.2s infinite normal;
  -webkit-animation: move 8.2s cubic-bezier(0.47, 0, 0.745, 0.715) 3.2s infinite normal;
}

.home .pos16 {
  left: 32%;
}

.home .scale16 {
  transform: scale(1.6);
  -webkit-transform: scale(1.6);
}

.home .stretch17 {
  animation: stretch 5.4s ease 0s infinite normal;
  -webkit-animation: stretch 5.4s ease 0s infinite normal;
}

.home .shake17 {
  animation: shake 5.4s ease 0s infinite normal;
  -webkit-animation: shake 5.4s ease 0s infinite normal;
}

.home .move17 {
  animation: move 8.4s cubic-bezier(0.47, 0, 0.745, 0.715) 3.4s infinite normal;
  -webkit-animation: move 8.4s cubic-bezier(0.47, 0, 0.745, 0.715) 3.4s infinite normal;
}

.home .pos17 {
  left: 34%;
}

.home .scale17 {
  transform: scale(1.7);
  -webkit-transform: scale(1.7);
}

.home .stretch18 {
  animation: stretch 5.6s ease 0s infinite normal;
  -webkit-animation: stretch 5.6s ease 0s infinite normal;
}

.home .shake18 {
  animation: shake 5.6s ease 0s infinite normal;
  -webkit-animation: shake 5.6s ease 0s infinite normal;
}

.home .move18 {
  animation: move 8.6s cubic-bezier(0.47, 0, 0.745, 0.715) 3.6s infinite normal;
  -webkit-animation: move 8.6s cubic-bezier(0.47, 0, 0.745, 0.715) 3.6s infinite normal;
}

.home .pos18 {
  left: 36%;
}

.home .scale18 {
  transform: scale(1.8);
  -webkit-transform: scale(1.8);
}

.home .stretch19 {
  animation: stretch 5.8s ease 0s infinite normal;
  -webkit-animation: stretch 5.8s ease 0s infinite normal;
}

.home .shake19 {
  animation: shake 5.8s ease 0s infinite normal;
  -webkit-animation: shake 5.8s ease 0s infinite normal;
}

.home .move19 {
  animation: move 8.8s cubic-bezier(0.47, 0, 0.745, 0.715) 3.8s infinite normal;
  -webkit-animation: move 8.8s cubic-bezier(0.47, 0, 0.745, 0.715) 3.8s infinite normal;
}

.home .pos19 {
  left: 38%;
}

.home .scale19 {
  transform: scale(1.9);
  -webkit-transform: scale(1.9);
}

.home .stretch20 {
  animation: stretch 6s ease 0s infinite normal;
  -webkit-animation: stretch 6s ease 0s infinite normal;
}

.home .shake20 {
  animation: shake 6s ease 0s infinite normal;
  -webkit-animation: shake 6s ease 0s infinite normal;
}

.home .move20 {
  animation: move 9s cubic-bezier(0.47, 0, 0.745, 0.715) 4s infinite normal;
  -webkit-animation: move 9s cubic-bezier(0.47, 0, 0.745, 0.715) 4s infinite normal;
}

.home .pos20 {
  left: 40%;
}

.home .scale20 {
  transform: scale(2);
  -webkit-transform: scale(2);
}

.home .stretch21 {
  animation: stretch 6.2s ease 0s infinite normal;
  -webkit-animation: stretch 6.2s ease 0s infinite normal;
}

.home .shake21 {
  animation: shake 6.2s ease 0s infinite normal;
  -webkit-animation: shake 6.2s ease 0s infinite normal;
}

.home .move21 {
  animation: move 9.2s cubic-bezier(0.47, 0, 0.745, 0.715) 4.2s infinite normal;
  -webkit-animation: move 9.2s cubic-bezier(0.47, 0, 0.745, 0.715) 4.2s infinite normal;
}

.home .pos21 {
  left: 42%;
}

.home .scale21 {
  transform: scale(2.1);
  -webkit-transform: scale(2.1);
}

.home .stretch22 {
  animation: stretch 6.4s ease 0s infinite normal;
  -webkit-animation: stretch 6.4s ease 0s infinite normal;
}

.home .shake22 {
  animation: shake 6.4s ease 0s infinite normal;
  -webkit-animation: shake 6.4s ease 0s infinite normal;
}

.home .move22 {
  animation: move 9.4s cubic-bezier(0.47, 0, 0.745, 0.715) 4.4s infinite normal;
  -webkit-animation: move 9.4s cubic-bezier(0.47, 0, 0.745, 0.715) 4.4s infinite normal;
}

.home .pos22 {
  left: 44%;
}

.home .scale22 {
  transform: scale(2.2);
  -webkit-transform: scale(2.2);
}

.home .stretch23 {
  animation: stretch 6.6s ease 0s infinite normal;
  -webkit-animation: stretch 6.6s ease 0s infinite normal;
}

.home .shake23 {
  animation: shake 6.6s ease 0s infinite normal;
  -webkit-animation: shake 6.6s ease 0s infinite normal;
}

.home .move23 {
  animation: move 9.6s cubic-bezier(0.47, 0, 0.745, 0.715) 4.6s infinite normal;
  -webkit-animation: move 9.6s cubic-bezier(0.47, 0, 0.745, 0.715) 4.6s infinite normal;
}

.home .pos23 {
  left: 46%;
}

.home .scale23 {
  transform: scale(2.3);
  -webkit-transform: scale(2.3);
}

.home .stretch24 {
  animation: stretch 6.8s ease 0s infinite normal;
  -webkit-animation: stretch 6.8s ease 0s infinite normal;
}

.home .shake24 {
  animation: shake 6.8s ease 0s infinite normal;
  -webkit-animation: shake 6.8s ease 0s infinite normal;
}

.home .move24 {
  animation: move 9.8s cubic-bezier(0.47, 0, 0.745, 0.715) 4.8s infinite normal;
  -webkit-animation: move 9.8s cubic-bezier(0.47, 0, 0.745, 0.715) 4.8s infinite normal;
}

.home .pos24 {
  left: 48%;
}

.home .scale24 {
  transform: scale(2.4);
  -webkit-transform: scale(2.4);
}

.home .stretch25 {
  animation: stretch 7s ease 0s infinite normal;
  -webkit-animation: stretch 7s ease 0s infinite normal;
}

.home .shake25 {
  animation: shake 7s ease 0s infinite normal;
  -webkit-animation: shake 7s ease 0s infinite normal;
}

.home .move25 {
  animation: move 10s cubic-bezier(0.47, 0, 0.745, 0.715) 5s infinite normal;
  -webkit-animation: move 10s cubic-bezier(0.47, 0, 0.745, 0.715) 5s infinite normal;
}

.home .pos25 {
  left: 50%;
}

.home .scale25 {
  transform: scale(2.5);
  -webkit-transform: scale(2.5);
}

.home .stretch26 {
  animation: stretch 7.2s ease 0s infinite normal;
  -webkit-animation: stretch 7.2s ease 0s infinite normal;
}

.home .shake26 {
  animation: shake 7.2s ease 0s infinite normal;
  -webkit-animation: shake 7.2s ease 0s infinite normal;
}

.home .move26 {
  animation: move 10.2s cubic-bezier(0.47, 0, 0.745, 0.715) 5.2s infinite normal;
  -webkit-animation: move 10.2s cubic-bezier(0.47, 0, 0.745, 0.715) 5.2s infinite normal;
}

.home .pos26 {
  left: 52%;
}

.home .scale26 {
  transform: scale(2.6);
  -webkit-transform: scale(2.6);
}

.home .stretch27 {
  animation: stretch 7.4s ease 0s infinite normal;
  -webkit-animation: stretch 7.4s ease 0s infinite normal;
}

.home .shake27 {
  animation: shake 7.4s ease 0s infinite normal;
  -webkit-animation: shake 7.4s ease 0s infinite normal;
}

.home .move27 {
  animation: move 10.4s cubic-bezier(0.47, 0, 0.745, 0.715) 5.4s infinite normal;
  -webkit-animation: move 10.4s cubic-bezier(0.47, 0, 0.745, 0.715) 5.4s infinite normal;
}

.home .pos27 {
  left: 54%;
}

.home .scale27 {
  transform: scale(2.7);
  -webkit-transform: scale(2.7);
}

.home .stretch28 {
  animation: stretch 7.6s ease 0s infinite normal;
  -webkit-animation: stretch 7.6s ease 0s infinite normal;
}

.home .shake28 {
  animation: shake 7.6s ease 0s infinite normal;
  -webkit-animation: shake 7.6s ease 0s infinite normal;
}

.home .move28 {
  animation: move 10.6s cubic-bezier(0.47, 0, 0.745, 0.715) 5.6s infinite normal;
  -webkit-animation: move 10.6s cubic-bezier(0.47, 0, 0.745, 0.715) 5.6s infinite normal;
}

.home .pos28 {
  left: 56%;
}

.home .scale28 {
  transform: scale(2.8);
  -webkit-transform: scale(2.8);
}

.home .stretch29 {
  animation: stretch 7.8s ease 0s infinite normal;
  -webkit-animation: stretch 7.8s ease 0s infinite normal;
}

.home .shake29 {
  animation: shake 7.8s ease 0s infinite normal;
  -webkit-animation: shake 7.8s ease 0s infinite normal;
}

.home .move29 {
  animation: move 10.8s cubic-bezier(0.47, 0, 0.745, 0.715) 5.8s infinite normal;
  -webkit-animation: move 10.8s cubic-bezier(0.47, 0, 0.745, 0.715) 5.8s infinite normal;
}

.home .pos29 {
  left: 58%;
}

.home .scale29 {
  transform: scale(2.9);
  -webkit-transform: scale(2.9);
}

.home .stretch30 {
  animation: stretch 8s ease 0s infinite normal;
  -webkit-animation: stretch 8s ease 0s infinite normal;
}

.home .shake30 {
  animation: shake 8s ease 0s infinite normal;
  -webkit-animation: shake 8s ease 0s infinite normal;
}

.home .move30 {
  animation: move 11s cubic-bezier(0.47, 0, 0.745, 0.715) 6s infinite normal;
  -webkit-animation: move 11s cubic-bezier(0.47, 0, 0.745, 0.715) 6s infinite normal;
}

.home .pos30 {
  left: 60%;
}

.home .scale30 {
  transform: scale(3);
  -webkit-transform: scale(3);
}

.home .stretch31 {
  animation: stretch 8.2s ease 0s infinite normal;
  -webkit-animation: stretch 8.2s ease 0s infinite normal;
}

.home .shake31 {
  animation: shake 8.2s ease 0s infinite normal;
  -webkit-animation: shake 8.2s ease 0s infinite normal;
}

.home .move31 {
  animation: move 11.2s cubic-bezier(0.47, 0, 0.745, 0.715) 6.2s infinite normal;
  -webkit-animation: move 11.2s cubic-bezier(0.47, 0, 0.745, 0.715) 6.2s infinite normal;
}

.home .pos31 {
  left: 62%;
}

.home .scale31 {
  transform: scale(3.1);
  -webkit-transform: scale(3.1);
}

.home .stretch32 {
  animation: stretch 8.4s ease 0s infinite normal;
  -webkit-animation: stretch 8.4s ease 0s infinite normal;
}

.home .shake32 {
  animation: shake 8.4s ease 0s infinite normal;
  -webkit-animation: shake 8.4s ease 0s infinite normal;
}

.home .move32 {
  animation: move 11.4s cubic-bezier(0.47, 0, 0.745, 0.715) 6.4s infinite normal;
  -webkit-animation: move 11.4s cubic-bezier(0.47, 0, 0.745, 0.715) 6.4s infinite normal;
}

.home .pos32 {
  left: 64%;
}

.home .scale32 {
  transform: scale(3.2);
  -webkit-transform: scale(3.2);
}

.home .stretch33 {
  animation: stretch 8.6s ease 0s infinite normal;
  -webkit-animation: stretch 8.6s ease 0s infinite normal;
}

.home .shake33 {
  animation: shake 8.6s ease 0s infinite normal;
  -webkit-animation: shake 8.6s ease 0s infinite normal;
}

.home .move33 {
  animation: move 11.6s cubic-bezier(0.47, 0, 0.745, 0.715) 6.6s infinite normal;
  -webkit-animation: move 11.6s cubic-bezier(0.47, 0, 0.745, 0.715) 6.6s infinite normal;
}

.home .pos33 {
  left: 66%;
}

.home .scale33 {
  transform: scale(3.3);
  -webkit-transform: scale(3.3);
}

.home .stretch34 {
  animation: stretch 8.8s ease 0s infinite normal;
  -webkit-animation: stretch 8.8s ease 0s infinite normal;
}

.home .shake34 {
  animation: shake 8.8s ease 0s infinite normal;
  -webkit-animation: shake 8.8s ease 0s infinite normal;
}

.home .move34 {
  animation: move 11.8s cubic-bezier(0.47, 0, 0.745, 0.715) 6.8s infinite normal;
  -webkit-animation: move 11.8s cubic-bezier(0.47, 0, 0.745, 0.715) 6.8s infinite normal;
}

.home .pos34 {
  left: 68%;
}

.home .scale34 {
  transform: scale(3.4);
  -webkit-transform: scale(3.4);
}

.home .stretch35 {
  animation: stretch 9s ease 0s infinite normal;
  -webkit-animation: stretch 9s ease 0s infinite normal;
}

.home .shake35 {
  animation: shake 9s ease 0s infinite normal;
  -webkit-animation: shake 9s ease 0s infinite normal;
}

.home .move35 {
  animation: move 12s cubic-bezier(0.47, 0, 0.745, 0.715) 7s infinite normal;
  -webkit-animation: move 12s cubic-bezier(0.47, 0, 0.745, 0.715) 7s infinite normal;
}

.home .pos35 {
  left: 70%;
}

.home .scale35 {
  transform: scale(3.5);
  -webkit-transform: scale(3.5);
}

.home .stretch36 {
  animation: stretch 9.2s ease 0s infinite normal;
  -webkit-animation: stretch 9.2s ease 0s infinite normal;
}

.home .shake36 {
  animation: shake 9.2s ease 0s infinite normal;
  -webkit-animation: shake 9.2s ease 0s infinite normal;
}

.home .move36 {
  animation: move 12.2s cubic-bezier(0.47, 0, 0.745, 0.715) 7.2s infinite normal;
  -webkit-animation: move 12.2s cubic-bezier(0.47, 0, 0.745, 0.715) 7.2s infinite normal;
}

.home .pos36 {
  left: 72%;
}

.home .scale36 {
  transform: scale(3.6);
  -webkit-transform: scale(3.6);
}

.home .stretch37 {
  animation: stretch 9.4s ease 0s infinite normal;
  -webkit-animation: stretch 9.4s ease 0s infinite normal;
}

.home .shake37 {
  animation: shake 9.4s ease 0s infinite normal;
  -webkit-animation: shake 9.4s ease 0s infinite normal;
}

.home .move37 {
  animation: move 12.4s cubic-bezier(0.47, 0, 0.745, 0.715) 7.4s infinite normal;
  -webkit-animation: move 12.4s cubic-bezier(0.47, 0, 0.745, 0.715) 7.4s infinite normal;
}

.home .pos37 {
  left: 74%;
}

.home .scale37 {
  transform: scale(3.7);
  -webkit-transform: scale(3.7);
}

.home .stretch38 {
  animation: stretch 9.6s ease 0s infinite normal;
  -webkit-animation: stretch 9.6s ease 0s infinite normal;
}

.home .shake38 {
  animation: shake 9.6s ease 0s infinite normal;
  -webkit-animation: shake 9.6s ease 0s infinite normal;
}

.home .move38 {
  animation: move 12.6s cubic-bezier(0.47, 0, 0.745, 0.715) 7.6s infinite normal;
  -webkit-animation: move 12.6s cubic-bezier(0.47, 0, 0.745, 0.715) 7.6s infinite normal;
}

.home .pos38 {
  left: 76%;
}

.home .scale38 {
  transform: scale(3.8);
  -webkit-transform: scale(3.8);
}

.home .stretch39 {
  animation: stretch 9.8s ease 0s infinite normal;
  -webkit-animation: stretch 9.8s ease 0s infinite normal;
}

.home .shake39 {
  animation: shake 9.8s ease 0s infinite normal;
  -webkit-animation: shake 9.8s ease 0s infinite normal;
}

.home .move39 {
  animation: move 12.8s cubic-bezier(0.47, 0, 0.745, 0.715) 7.8s infinite normal;
  -webkit-animation: move 12.8s cubic-bezier(0.47, 0, 0.745, 0.715) 7.8s infinite normal;
}

.home .pos39 {
  left: 78%;
}

.home .scale39 {
  transform: scale(3.9);
  -webkit-transform: scale(3.9);
}

.home .stretch40 {
  animation: stretch 10s ease 0s infinite normal;
  -webkit-animation: stretch 10s ease 0s infinite normal;
}

.home .shake40 {
  animation: shake 10s ease 0s infinite normal;
  -webkit-animation: shake 10s ease 0s infinite normal;
}

.home .move40 {
  animation: move 13s cubic-bezier(0.47, 0, 0.745, 0.715) 8s infinite normal;
  -webkit-animation: move 13s cubic-bezier(0.47, 0, 0.745, 0.715) 8s infinite normal;
}

.home .pos40 {
  left: 80%;
}

.home .scale40 {
  transform: scale(4);
  -webkit-transform: scale(4);
}

.home .stretch41 {
  animation: stretch 10.2s ease 0s infinite normal;
  -webkit-animation: stretch 10.2s ease 0s infinite normal;
}

.home .shake41 {
  animation: shake 10.2s ease 0s infinite normal;
  -webkit-animation: shake 10.2s ease 0s infinite normal;
}

.home .move41 {
  animation: move 13.2s cubic-bezier(0.47, 0, 0.745, 0.715) 8.2s infinite normal;
  -webkit-animation: move 13.2s cubic-bezier(0.47, 0, 0.745, 0.715) 8.2s infinite normal;
}

.home .pos41 {
  left: 82%;
}

.home .scale41 {
  transform: scale(4.1);
  -webkit-transform: scale(4.1);
}

.home .stretch42 {
  animation: stretch 10.4s ease 0s infinite normal;
  -webkit-animation: stretch 10.4s ease 0s infinite normal;
}

.home .shake42 {
  animation: shake 10.4s ease 0s infinite normal;
  -webkit-animation: shake 10.4s ease 0s infinite normal;
}

.home .move42 {
  animation: move 13.4s cubic-bezier(0.47, 0, 0.745, 0.715) 8.4s infinite normal;
  -webkit-animation: move 13.4s cubic-bezier(0.47, 0, 0.745, 0.715) 8.4s infinite normal;
}

.home .pos42 {
  left: 84%;
}

.home .scale42 {
  transform: scale(4.2);
  -webkit-transform: scale(4.2);
}

.home .stretch43 {
  animation: stretch 10.6s ease 0s infinite normal;
  -webkit-animation: stretch 10.6s ease 0s infinite normal;
}

.home .shake43 {
  animation: shake 10.6s ease 0s infinite normal;
  -webkit-animation: shake 10.6s ease 0s infinite normal;
}

.home .move43 {
  animation: move 13.6s cubic-bezier(0.47, 0, 0.745, 0.715) 8.6s infinite normal;
  -webkit-animation: move 13.6s cubic-bezier(0.47, 0, 0.745, 0.715) 8.6s infinite normal;
}

.home .pos43 {
  left: 86%;
}

.home .scale43 {
  transform: scale(4.3);
  -webkit-transform: scale(4.3);
}

.home .stretch44 {
  animation: stretch 10.8s ease 0s infinite normal;
  -webkit-animation: stretch 10.8s ease 0s infinite normal;
}

.home .shake44 {
  animation: shake 10.8s ease 0s infinite normal;
  -webkit-animation: shake 10.8s ease 0s infinite normal;
}

.home .move44 {
  animation: move 13.8s cubic-bezier(0.47, 0, 0.745, 0.715) 8.8s infinite normal;
  -webkit-animation: move 13.8s cubic-bezier(0.47, 0, 0.745, 0.715) 8.8s infinite normal;
}

.home .pos44 {
  left: 88%;
}

.home .scale44 {
  transform: scale(4.4);
  -webkit-transform: scale(4.4);
}

.home .stretch45 {
  animation: stretch 11s ease 0s infinite normal;
  -webkit-animation: stretch 11s ease 0s infinite normal;
}

.home .shake45 {
  animation: shake 11s ease 0s infinite normal;
  -webkit-animation: shake 11s ease 0s infinite normal;
}

.home .move45 {
  animation: move 14s cubic-bezier(0.47, 0, 0.745, 0.715) 9s infinite normal;
  -webkit-animation: move 14s cubic-bezier(0.47, 0, 0.745, 0.715) 9s infinite normal;
}

.home .pos45 {
  left: 90%;
}

.home .scale45 {
  transform: scale(4.5);
  -webkit-transform: scale(4.5);
}

.home .stretch46 {
  animation: stretch 11.2s ease 0s infinite normal;
  -webkit-animation: stretch 11.2s ease 0s infinite normal;
}

.home .shake46 {
  animation: shake 11.2s ease 0s infinite normal;
  -webkit-animation: shake 11.2s ease 0s infinite normal;
}

.home .move46 {
  animation: move 14.2s cubic-bezier(0.47, 0, 0.745, 0.715) 9.2s infinite normal;
  -webkit-animation: move 14.2s cubic-bezier(0.47, 0, 0.745, 0.715) 9.2s infinite normal;
}

.home .pos46 {
  left: 92%;
}

.home .scale46 {
  transform: scale(4.6);
  -webkit-transform: scale(4.6);
}

.home .stretch47 {
  animation: stretch 11.4s ease 0s infinite normal;
  -webkit-animation: stretch 11.4s ease 0s infinite normal;
}

.home .shake47 {
  animation: shake 11.4s ease 0s infinite normal;
  -webkit-animation: shake 11.4s ease 0s infinite normal;
}

.home .move47 {
  animation: move 14.4s cubic-bezier(0.47, 0, 0.745, 0.715) 9.4s infinite normal;
  -webkit-animation: move 14.4s cubic-bezier(0.47, 0, 0.745, 0.715) 9.4s infinite normal;
}

.home .pos47 {
  left: 94%;
}

.home .scale47 {
  transform: scale(4.7);
  -webkit-transform: scale(4.7);
}

.home .stretch48 {
  animation: stretch 11.6s ease 0s infinite normal;
  -webkit-animation: stretch 11.6s ease 0s infinite normal;
}

.home .shake48 {
  animation: shake 11.6s ease 0s infinite normal;
  -webkit-animation: shake 11.6s ease 0s infinite normal;
}

.home .move48 {
  animation: move 14.6s cubic-bezier(0.47, 0, 0.745, 0.715) 9.6s infinite normal;
  -webkit-animation: move 14.6s cubic-bezier(0.47, 0, 0.745, 0.715) 9.6s infinite normal;
}

.home .pos48 {
  left: 96%;
}

.home .scale48 {
  transform: scale(4.8);
  -webkit-transform: scale(4.8);
}

.home .stretch49 {
  animation: stretch 11.8s ease 0s infinite normal;
  -webkit-animation: stretch 11.8s ease 0s infinite normal;
}

.home .shake49 {
  animation: shake 11.8s ease 0s infinite normal;
  -webkit-animation: shake 11.8s ease 0s infinite normal;
}

.home .move49 {
  animation: move 14.8s cubic-bezier(0.47, 0, 0.745, 0.715) 9.8s infinite normal;
  -webkit-animation: move 14.8s cubic-bezier(0.47, 0, 0.745, 0.715) 9.8s infinite normal;
}

.home .pos49 {
  left: 98%;
}

.home .scale49 {
  transform: scale(4.9);
  -webkit-transform: scale(4.9);
}

.home .stretch50 {
  animation: stretch 12s ease 0s infinite normal;
  -webkit-animation: stretch 12s ease 0s infinite normal;
}

.home .shake50 {
  animation: shake 12s ease 0s infinite normal;
  -webkit-animation: shake 12s ease 0s infinite normal;
}

.home .move50 {
  animation: move 15s cubic-bezier(0.47, 0, 0.745, 0.715) 10s infinite normal;
  -webkit-animation: move 15s cubic-bezier(0.47, 0, 0.745, 0.715) 10s infinite normal;
}

.home .pos50 {
  left: 100%;
}

.home .scale50 {
  transform: scale(5);
  -webkit-transform: scale(5);
}

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

.home.page .grid-container .grid-item span.update-icon {
  font-family: FuturaLTPro, Futura, San Francisco, Helvetica Neue, Arial, sans-serif;
  color: #ff0041;
  font-weight: bold;
  text-shadow: 0.1em 0.1em 0.05em #fff999;
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 1em;
  margin-left: .3em;
  animation: NewIcon 1s infinite;
}

/* 商品紹介 */
.products.page .grid-container .grid-item a {
  position: relative;
}

.products.page .grid-container .grid-item a:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 150%;
  height: 400%;
  content: '';
  transition: all .5s ease-in-out;
  transform: translateX(-85%) translateY(-85%) rotate(-45deg);
  background: #fff100;
  z-index: 1;
}

.products.page .grid-container .grid-item a:hover:before {
  transform: translateX(20%) translateY(-14%) rotate(-45deg);
  opacity: 0.5;
  background: #113f8f;
}

.products.page .grid-container .grid-item a:after {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  transition: all .5s ease-in-out;
  font-family: "Font Awesome 5 Free";
  font-size: 0;
  content: '\f111';
  font-weight: 900;
  z-index: 1;
  opacity: 0;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}

.products.page .grid-container .grid-item a:hover:after {
  font-size: 1000%;
  opacity: 0.7;
}

.products.page .grid-container .grid-item span.item-wrap {
  position: absolute;
  display: flex;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  line-height: 110%;
  -webkit-transition: all .3s;
  transition: all .3s;
  margin-left: 1em;
  margin-right: 1em;
  position: absolute;
  z-index: 2;
}

.products.page .grid-container .grid-item span.item-title {
  font-weight: bold;
  color: #fff100;
  z-index: 1;
  text-shadow: 0.1em 0.1em 0.05em #113f8f;
  letter-spacing: .1em;
  font-size: 130%;
  line-height: 110%;
  -webkit-transition: all .3s;
  transition: all .3s;
  opacity: 0;
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}

.products.page .grid-container .grid-item a:hover span.item-title {
  opacity: 1;
  transform: translateX(0%);
}

.products.page .grid-container .grid-item span.item-description {
  font-family: FuturaLTPro, Futura, San Francisco, Helvetica Neue, Arial, sans-serif;
  color: #113f8f;
  text-shadow: 0.1em 0.1em 0.05em #fff999;
  z-index: 1;
}

.products.page .grid-container .grid-item span.new-icon {
  font-family: FuturaLTPro, Futura, San Francisco, Helvetica Neue, Arial, sans-serif;
  color: #ff0041;
  font-weight: bold;
  text-shadow: 0.1em 0.1em 0.05em #fff999;
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 1em;
  margin-left: .3em;
  animation: NewIcon 1s infinite;
}

.free-shipping {
  text-align: center;
  padding: .5rem;
  background-color: #fff;

  & p {
    text-align: center;
    margin-bottom: 0;
    margin-top: 0;
    line-height: 150%;
  }

  & span.big-word {
    font-size: 120%;
    font-weight: bold;
    color: #d61642;
  }

  & span.middle-word {
    font-size: 100%;
    font-weight: bold;
  }

  & span {
    display: inline-block;
  }
}

/*###### オリジナルサイダー ######*/
.originalcider_description ul {
  max-width: 620px;
  margin: auto;
  list-style: none;
  padding-left: 0;
}

.originalcider_description ul>li {
  text-indent: -1.5em;
  padding-left: 1.5em;
  margin-left: 1em;
}

.originalcider_description ul>li:before {
  content: "\f00c";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: .5em;
  color: #d61642;
}

/*** アコーディオンメニュー(jQuery) ***/
ul.ac-menu {
  margin: 0;
  padding: 0;
  display: block;
  list-style: none;
}

ul.ac-menu li {
  margin: 0;
  padding: 0;
  display: block;
}

ul.ac-menu li ul {
  padding: 0;
  display: block;
  list-style: none;
}

ul.ac-menu li ul li {
  margin: 0;
  padding: 0;
  display: block;
  list-style: none;
}

ul.ac-menu li>.button {
  cursor: pointer;
}

ul.ac-menu li>.inner {
  display: block;

  & li i {
    margin-right: .25em;
  }
}

ul.ac-menu li:not(.open)>.inner {
  display: none;
}

ul.ac-menu li.open .button:before {
  content: '\f054';
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  padding-right: 8px;
}

ul.ac-menu li.open .button.passive:before {
  content: '\f078';
}

ul.ac-menu li.close .button:before {
  content: '\f078';
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  padding-right: 8px;
}

ul.ac-menu li.close .button.active:before {
  content: '\f054';
}

.ac-menu h3 {
  border: none;
  margin: 0 0 2px;
}

.ac-menu.company h3 {
  background-color: #d61642;
  color: #fff;
}

.ac-menu.company h4 {
  margin-top: 20px;
}

ul.ac-menu.company li .inner>li img {
  display: block;
  float: left;
}

/*###### Welcart ######*/
/*### 商品一覧ページ ###*/
/*** grid layout ***/
.grid-container.catbox {
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 20px;
}

.grid-container.catbox .grid-item {
  display: flex;
  flex-direction: column;
}

.grid-container.catbox .grid-item .sainitemimg {
  display: block;
  text-align: center;
  margin-bottom: 20px;
}

.grid-container.catbox .grid-item .sainitemimg img {
  display: block;
  margin: auto;
}

.sainitem .itemcaption dl,
.sainitem .storycontent dl {
  position: relative;
  font-size: 80%;
  background-color: #fff;
  padding: .5em;
  border-radius: 10px;
}

.sainitem .itemcaption dl dt,
.sainitem .storycontent dl dt {
  font-weight: bold;
  width: 6em;
  float: left;
  clear: left;
  border-right: 2px solid #f2f9fc;
}

.sainitem .itemcaption dl dd,
.sainitem .storycontent dl dd {
  margin-left: 6em;
  padding-left: .5em;
}

.sainitem .itemcaption ul,
.sainitem .itemcaption p,
.sainitem .storycontent ul,
.sainitem .storycontent p {
  font-size: 90%;
  line-height: 130%;
}

.itemcaption ul,
.storycontent ul {
  list-style: none;
  padding-left: 0;
}

.itemcaption ul>li,
.storycontent ul>li {
  text-indent: -1.5em;
  padding-left: 1.5em;
  margin-left: 1em;
}

.itemcaption ul>li:before,
.storycontent ul>li:before {
  content: "\f00c";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: .5em;
  color: #d61642;
}

.page.item-list .itemcaption {}

.page.item-list .goto-wrap {
  text-align: right;
  margin-bottom: 10px;
}

.page.item-list .goto-wrap a {
  display: inline-block;
  font-size: 90%;
  line-height: 130%;
  background-color: #eb8ba1;
  color: #fff;
  width: auto;
  padding: .25em .5em;
  border-radius: 10px;
}

.page.item-list .goto-wrap a:hover {
  background-color: #d61642;
}

.page.item-list .status-wrap {
  text-align: right;
}

.page.item-list .status-wrap span {
  display: inline-block;
}

.page.item-list .status-wrap .price {
  font-size: 120%;
  font-weight: bold;
}

.page.item-list .status-wrap .tax {
  font-size: 90%;
  font-style: normal;
}

.sainitem .itemcaption .more-link,
.sainitem .storycontent .more-link {
  display: inline;
}

/*### 商品詳細ページ ###*/
/*** grid layout ***/
.grid-container.item-detail {
  /*テンプレート変更20231209*/
  grid-template-columns: auto 1fr;
  gap: 20px;
}

#img-box {
  /*テンプレート変更20231209*/
  display: flex;
  gap: 20px;
  justify-content: center;
}

.single.item .itemcaption dl,
.single.item .item-description dl {
  position: relative;
}

.single.item .itemcaption dl dt,
.single.item .item-description dl dt {
  font-weight: bold;
  float: left;
  clear: left;
  width: 6em;
  text-align: right;
  position: absolute;
}

.single.item .itemcaption dl dd,
.single.item .item-description dl dd {
  margin-left: 6.5em;
}

.single.item .entry-categories-tags {
  display: none;
}

.single.item .entry-content {
  margin-top: -80px;
}

.entry-content #itempage h3 {
  z-index: -1;
}

#itempage .itemcaption h3 {}

#itempage .exp .field,
#itempage .exp .field {
  text-shadow: -1px 1px 0 #fff, 1px 1px 0 #fff,
    1px -1px 0 #fff, -1px -1px 0 #fff;

  & p {
    margin-top: 0;
    margin-bottom: 0;
  }
}

#itempage .exp .field .field_name,
#itempage .exp .field .field_price {
  display: inline-block;
}

#itempage .exp .field .field_name {
  font-weight: bold;
}

#itempage .exp .field .field_name>.tax {
  font-size: 90%;
  font-weight: normal;
  font-style: normal;
}

#itempage .itemsubimg {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

#itempage .itemsubimg a {
  position: relative;
  scroll-snap-align: center;
  max-width: 120px;
}

#itempage .itemsubimg a img {
  object-fit: contain;
  position: abusolute;
  width: 100%;
  height: 100%;
}

/* grid layout */
.grid-container.item-side {
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}

.grid-container.item-side .grid-item {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.grid-container.item-side .grid-item h3 {
  margin-top: 0;
}

/* カートボタン */
input[type="submit"].skubutton {
  border-radius: 1.5em;
  border: none;
  background: #ff8000;
  box-shadow: 0 3px 1px #bf6000;
  color: #fff;
  transition: 0.3s;
  font-weight: bold;
  font-size: 100%;
  margin: auto;
  margin-top: 10px;
  margin-bottom: 10px;
  width: auto;
  text-align: center;
  padding: .8em .8em;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}

input[type="submit"].skubutton:hover {
  background: #ffcc00;
  transform: translateY(3px);
  box-shadow: 0 -3px 1px #e67300;
}

input[type="submit"].skubutton:focus {
  outline: 0;
  background: #ff8000;
  box-shadow: 0 -3px 1px #cc6600;
}

.status-wrap input[type="submit"].skubutton {
  font-size: 90%;
}

.skuform .zaiko_status {
  color: #d61642;
}

/** 関連商品 **/
.assistance_item {
  & h3 {
    border-bottom: none;
  }

  & ul {
    list-style: none;
    padding-left: 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: .25em;

    & li {
      display: block;
      max-width: 100%;

      .listbox {
        display: flex;
        flex-direction: row;
        gap: .25em;

        .slit {
          width: 100px;
          min-width: 80px;

          & img {
            display: block;
            width: 100%;
          }
        }

        .detail {
          width: auto;

          .assist_excerpt {
            & a {
              text-decoration: none;

              & h4 {
                margin-top: 0;
                margin-bottom: 0;
              }
            }

            & p {
              font-size: 90%;
              margin-bottom: 10px;
            }
          }

          .assist_price {}
        }
      }
    }
  }
}

/*### カートページ ###*/
h1.cart_page_title {
  text-align: center;
  font-weight: normal;
  color: #303232;
  font-size: 180%;
}

.usces-cart .cart-page .send input {
  border-radius: 20px;
  border: none;
  background: #2ca2d4;
  box-shadow: 0 5px 1px #217a9f;
  color: #fff;
  transition: 0.3s;
  margin-bottom: 10px;
}

.usces-cart .cart-page .send input:hover {
  background: #61b9df;
  transform: translateY(3px);
  box-shadow: 0 -3px 1px #217a9f;
}

.usces-cart .cart-page .send input:focus {
  outline: 0;
  background: #2ca2d4;
  box-shadow: 0 -5px 1px #217a9f;
}

input.to_confirm_button,
input.back_to_customer_button {
  margin-left: .25em;
  margin-right: .25em;
}

#purchase_form {

  .back_to_delivery_button,
  .checkout_button {
    margin-left: .25em;
    margin-right: .25em;
  }
}

/*### メンバーページ ###*/
h1.member_page_title {
  text-align: center;
  font-weight: normal;
  color: #303232;
  font-size: 180%;
}

.usces-member #memberpages .loginbox {
  border: none;
  width: 50%;
  border-radius: 20px;
}

/* 決済方法選択（メンテナンス中） */
.payment_1,
.payment_2,
.payment_3 {
  /*display: none;*/
}

.current-user-j-kitamura {

  .payment_1,
  .payment_2,
  .payment_3 {
    /*display: block;*/
  }
}

/*### 会員マイページ ###*/
.usces-member #memberpages #newmember .customer_form {
  width: 80%;
  margin: auto;
  color: #282e31;
}

.usces-member #memberpages #newmember .customer_form th {
  width: 15.5em;
  background-color: #96d1ea;
}

.usces-member #memberpages #newmember .customer_form th em {
  color: #d61642;
}

.usces-member #memberpages #newmember .customer_form tr:nth-of-type(2n+1) td {
  background-color: #cae8f4;
}

.usces-member #memberpages #newmember .customer_form th,
.usces-member #memberpages #newmember .customer_form td {
  border-color: #f2f9fc;
  border-left: none;
  border-right: none;
}

.usces-member #memberpages .loginbox p.submit {
  text-align: center;
}

.usces-member #memberpages .loginbox #member_login {
  background-color: #d61642;
  color: #fff;
  transition: all .3s;
  box-shadow: 0 3px 1px #a11132;
  border-radius: 1.5em;
  width: 50%;
  min-width: 8em;
}

.usces-member #memberpages .loginbox #member_login:hover {
  background-color: #e05071;
  transform: translateY(3px);
  box-shadow: 0 -3px 1px #a11132;
}

.usces-member #memberpages .loginbox #member_login:focus {
  background-color: #d61642;
  box-shadow: 0 -3px 1px #a11132;
}

.usces-member #memberpages input[type="submit"],
.usces-member #memberpages input[type="button"] {
  transition: all .3s;
  border-radius: 1.5em;
  width: auto;
  min-width: 8em;
  padding: .75em .5em;
  margin: auto .25em;
  border: none;
}

.usces-member #memberpages input[type="submit"].editmember {
  background-color: #2ca2d4;
  box-shadow: 0 3px 1px #217a9f;
  color: #fff;
}

.usces-member #memberpages input[type="button"],
.usces-member #memberpages input[type="submit"].deletemember {
  box-shadow: 0 3px 1px #ccc;
  cursor: pointer;
}

.usces-member #memberpages input[type="submit"].editmember:hover {
  background-color: #61b9df;
  transform: translateY(3px);
  box-shadow: 0 -3px 1px #217a9f;
}

.usces-member #memberpages input[type="button"]:hover,
.usces-member #memberpages input[type="submit"].deletemember:hover {
  transform: translateY(3px);
  box-shadow: 0 -3px 1px #ccc;
}

.usces-member #memberpages input[type="submit"].editmember:focus {
  background-color: #2ca2d4;
  box-shadow: 0 -3px 1px #217a9f;
}

.usces-member #memberpages input[type="button"]:focus,
.usces-member #memberpages input[type="submit"].deletemember:focus {
  box-shadow: 0 -3px 1px #ccc;
}

.usces-member #memberpages .loginbox .forgetmenot {}

.usces-member #memberpages .loginbox .new-entry {
  background-color: #f9fcfe;
  border-radius: 4px;
}

.usces-member #memberpages .loginbox .new-entry #nav a {
  background-color: #2ca2d4;
  color: #fff;
  transition: all .3s;
  box-shadow: 0 3px 1px #217a9f;
  border-radius: 2em;
}

.usces-member #memberpages .loginbox .new-entry #nav a:hover {
  background-color: #61b9df;
  transform: translateY(3px);
  box-shadow: 0 -3px 1px #217a9f;
}

.usces-member #memberpages .loginbox .new-entry #nav a:focus {
  background-color: #2ca2d4;
  box-shadow: 0 -3px 1px #217a9f;
}

.usces-member #memberpages input,
.usces-member #memberpages select {
  outline-color: transparent;
  border-color: #96d1ea;
}

.usces-member #memberpages input:focus,
.usces-member #memberpages select:focus {
  outline-color: #2ca2d4;
}

/*** 入会フォーム ***/
.usces-member #memberpages #newmember .header_explanation ul {
  padding-left: 0;
  list-style: none;
}

.usces-member #memberpages #newmember .header_explanation ul li {
  text-indent: -1.5em;
  padding-left: 1.5em;
}

.usces-member #memberpages #newmember .header_explanation ul li:before {
  content: "\f00c";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: .5em;
  color: #d61642;
}

.usces-member ul.member_submenu {
  margin: 0;
  padding: 0;

  & li {
    margin-bottom: .714286em;
    list-style: none;
    text-align: center;
  }

  & a {
    display: inline-block;
    width: auto;
    background-color: #efefef;
    color: #262626;
    transition: .3s ease all;
    text-decoration: none;
    font-size: 14px;
    box-shadow: 0 3px 1px #ccc;
    border-radius: 1.5em;
    min-width: 8em;
    padding: .75em .5em;
    margin: auto .25em;
    border: none;
  }

  & a:hover {
    background-color: #ddd;
    text-decoration: none;
  }

  & a:focus {
    box-shadow: 0 -3px 1px #ccc;
    transform: translateY(3px);
  }
}

.member-page .send {
  padding-top: 0.714286em;
  text-align: center;
}

.member-page .send input {
  color: #fff;
  background-color: #ff8c00;
}

.member-page .send input:hover {
  background-color: #ffa500;
}

.member-page #memberinfo .send input.top,
.member-page #memberinfo .send input.deletemember {
  color: #262626;
  background-color: #efefef;
  -webkit-transition: .3s ease all;
  -moz-transition: .3s ease all;
  -o-transition: .3s ease all;
  transition: .3s ease all;
  margin-bottom: 10px;
}

.member-page #memberinfo .send input.deletemember {
  margin-top: .714286em;
}

.member-page #memberinfo .send input.top:hover,
.member-page #memberinfo .send input.deletemember:hover {
  background-color: #ddd;
}

/*** ショップページ,商品カテゴリページ ***/
.sainitem input.skuquantity,
input.skuquantity {
  display: inline-block;
  width: 4em;
  max-width: 5em;
}

.sainitem input.skuquantity:focus,
input.skuquantity:focus {
  outline-color: #2ca2d4;
}

.sainitem .more-link {
  display: inline;
}

.sainitem .storytitle {
  border: none;
  border-bottom: solid 3px #f5c5d0;
  position: relative;
  padding-bottom: 0.2em;
  background: none;
  text-align: left;
  color: #303232;
}

.sainitem .storytitle:after {
  position: absolute;
  content: "";
  border-bottom: solid 6px #d61642;
  bottom: -6px;
  left: 0;
  width: 30%;
}

.sainitem .storytitle a {
  color: #371f25;
  text-decoration: none;
}

.item-list .online-payment-banner {
  text-align: center;

  & img {
    margin-left: 10px;
    margin-right: 10px;
  }

  & p span {
    display: inline-block;
  }
}

.item-list .online-payment-banner img:not(:last-child),
.item-list .online-payment-banner .r-pay {
  margin-right: 1em;
}

.r-pay img {
  height: 40px;
  width: auto;
}

/*### お支払い方法・送料 ###*/
.shipping .online-payment-banner img {
  margin-left: 10px;
  margin-right: 10px;
}

/*###### 会社概要 ######*/
.company h3.popup {
  overflow: hidden;
  padding: 0;
}

.company h3.popup a {
  display: block;
  color: #d61642;
  position: relative;
  padding: 0.5em;
  transition: all 0.3s ease-in;
  z-index: 1;
}

.company h3.popup a:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: '\f00e';
  text-indent: 1em;
  font-size: 33px;
  width: 0%;
  height: 100%;
  border-radius: 0;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  background-color: #d61642;
  color: #fff;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  transition: all 0.3s ease-in;
  opacity: 0;
  z-index: -1;
}

.company h3.popup:hover a:before {
  opacity: 0.5;
  width: 100%;
}

.company h3.popup:hover a {
  color: #fff;
}

.company h3.popup a span {
  display: inline-block;
  font-size: 80%;
  margin-left: 1em;
}

.company h3.popup a span:before {
  content: "―";
}

.company h3.popup {
  background-color: #fff;
  border: solid 8px #d61642;
  cursor: pointer;
  text-align: center;
}

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

.company .presidentsign p {
  line-height: 100%;
  margin-bottom: 0;
}

dl#GaiyouData,
dl.gaiyou-data,
dl#GaiyouData2,
dl#EnkakuData {
  margin-left: 0;
  padding-left: 0;
}

dl#GaiyouData dd,
dl.gaiyou-data dd,
dl#GaiyouData2 dd,
dl#EnkakuData dd {
  margin-bottom: .5em;
}

dl#EnkakuData dt {
  float: left;
  clear: left;
  width: 6.5em;
  text-align: right;
  font-weight: bold;
}

dl#EnkakuData dd {
  margin-left: 7em;
}

dl#EnkakuData dt .month.digit1 {
  margin-left: .6em;
}

dl#GaiyouData dt {
  float: left;
  clear: left;
  width: 6em;
  text-align: right;
  font-weight: bold;
}

dl#GaiyouData dt span {
  display: block;
  margin-top: -0.5em;
}

dl#GaiyouData dd {
  margin-left: 6.5em;
}

dl#GaiyouData2 dt {
  font-weight: bold;
}

.open-info {
  background-color: #d61642;
  width: 100%;
  padding-top: 10px;
  margin-bottom: 60px;
}

.open-info h2 {
  float: left;
  height: auto;
  font-size: 200%;
  font-family: FuturaLTPro, Futura, San Francisco, Helvetica Neue, Arial, sans-serif;
  letter-spacing: .1em;
  width: 9em;
  margin-top: 0px;
  margin-bottom: 0;
  background-color: transparent;
}

.open-info .content-wrap {
  background-color: #f2f9fc;
  padding: 10px 20px;
  margin-left: 17em;
}

.open-info .content-wrap dl,
.open-info .content-wrap .appeal-info-text {
  margin: 0;
}

.open-info .content-wrap dl dt {
  float: left;
  clear: left;
  font-weight: bold;
}

.open-info .content-wrap dl dd {
  margin-left: 0;

  & i {
    margin-right: .25em;
  }
}

.open-info .keigu {
  display: block;
  text-align: right;
}

/*** grid layout ***/
.grid-container.company {
  grid-template-columns: repeat(auto-fit, minmax(254px, 1fr));
  line-height: 0;
  place-items: center;
}

.grid-container.company .grid-item {
  cursor: pointer;
  border: 8px solid #d51542;
}

.grid-container.company .grid-item a {
  background-color: #fff;
  overflow: hidden;
  position: relative;
}

.grid-container.company .grid-item a:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: '\f00e';
  font-size: 100px;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #d61642;
  color: #fff;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  transition: all 0.3s ease-in;
  transform: scale(1.4);
  opacity: 0;
}

.grid-container.company .grid-item a img {
  width: 100%;
  height: auto;
  display: block;
  transition-duration: 0.3s;
}

.grid-container.company .grid-item:hover a:before {
  opacity: 0.5;
  transform: scale(0.8);
}

/*###### 採用情報 ######*/
.open-info .content-wrap {
  text-align: left;
}

.recruit .main-title,
.recruit-child .main-title {
  color: #3d3e3f;
  text-align: center;
  font-size: 480%;
  background-color: transparent;
  font-family: FuturaLTPro, Futura, San Francisco, Helvetica Neue, Arial, sans-serif;
  padding: 0;
  margin: 0;
  letter-spacing: 0.05em;
  line-height: 100%;
}

.recruit .main-description,
.recruit-child .main-description {
  text-align: center;
  font-size: 90%;
}

.peoplelist .portrait {
  width: 100%;
  overflow: hidden;
  display: block;
}

.peoplelist .sprite-rotate img {
  display: block;
  margin: 0;
  width: 800%;
  height: auto;
  max-width: none;
}

body:not(.mobile-view) .peoplelist .sprite-rotate img {
  animation-name: sprite-rotate-portrait;
  animation-duration: 1.5s;
  animation-timing-function: steps(8, end);
  animation-iteration-count: infinite;
  animation-fill-mode: both;
  animation-play-state: paused;
  transform: translateX(0);
}

.peoplelist .grid-item:hover .sprite-rotate img {
  animation-play-state: running;
}

/*** grid layout ***/
.recruit .grid-container,
.recruit-child .grid-container {
  grid-template-columns: repeat(auto-fit, minmax(254px, 1fr));
}

.recruit .grid-container .grid-item,
.recruit-child .grid-container .grid-item {
  align-items: start;
  justify-content: space-around;
}

.recruit .grid-container .grid-item span,
.recruit-child .grid-container .grid-item span {
  display: block;
}

.peoplelist .inner {
  display: block;
  position: relative;
  margin: 0 auto 0;
  box-sizing: border-box;
  padding: 25px 8.33333%;
  width: 100%;
  background-color: white;
  text-decoration: none;
  color: #3d3e3f;
  margin-top: -40px;
  width: 83.33333%;
  transition: all .3s;
}

.peoplelist .inner .tag {
  position: absolute;
  top: 0;
  margin: 0;
  margin-top: -10px;
  margin-right: -8.333333%;
  padding: .5em 1em;
  line-height: 110%;
  font-size: 10px;
  letter-spacing: .1em;
  color: #fff;
}

.tag.seizo {
  background-color: #69c;
}

.tag.seisangyomu {
  background-color: #6c6;
}

.tag.hinho {
  background-color: #f66;
}

.tag.eigyo {
  background-color: #ffbb38;
}

.tag.ceo {
  background-color: #e52838;
}

.peoplelist .inner .title {
  margin: -3px 0;
  font-size: 16px;
  font-weight: 700;
  line-height: 22px;
  text-align: left;
}

.peoplelist .inner .people-info {
  margin: 15px 0 0;
  font-size: 12px;
  line-height: 1;
  white-space: nowrap
}

.peoplelist .inner .people-info::before {
  display: block;
  margin-bottom: 10px;
  border-top: 1px solid;
  width: 50%;
  height: 0;
  content: ""
}

.peoplelist .inner .people-info span {
  font-size: 11px;
  display: inline;
}

.peoplelist .link:hover .inner {
  background-color: #2ca2d4;
  color: white;
}

.peoplelist .link:hover .inner .title {
  color: #fff;
}

/*** grid layout ***/
.peoplelist.random .grid-item:nth-of-type(n+4) {
  display: none;
}

.subindex .grid-item {
  display: flex;
  arign-items: center;
  justify-content: center;
  background-color: #fff;
  cursor: pointer;
}

.subindex .grid-item a {
  text-align: center;
}

.subindex .inner i {
  font-size: 800%;
  color: #d61642;
}

.subindex .inner .title-en {
  font-weight: bold;
  font-family: FuturaLTPro, Futura, San Francisco, Helvetica Neue, Arial, sans-serif;
  font-size: 120%;
  letter-spacing: .1em;
  line-height: 100%;
  color: #371f25;
}

.subindex .inner .title-ja {
  font-size: 80%;
  margin-bottom: 1em;
  color: #371f25;
}

.subindex .inner .description {
  font-size: 80%;
  line-height: 120%;
  color: #87787b;
}

.subindex .more {
  margin: auto;
  z-index: 1;
  width: 83.33333%;
  margin-top: .5em;
}

.subindex .more i {
  font-size: 200%;
}

.subindex .grid-item:hover .more {
  background-color: #2ca2d4;
}

.rikunavi {
  & a {
    display: inline-block;

    & img {
      display: block;
    }
  }

  & p {
    display: inline-block;
    margin: 0 8px;

    & a {
      display: block;

      & img {
        display: block;
      }
    }
  }
}

/*** 採用LINE ***/
.line-button-wrap {
  text-align: center;
}

.line-wrap {
  margin-bottom: 1em;
}

/*### 社長メッセージ・社員インタビュー ###*/
.recruit-child .entry-content,
.interview .entry-content {
  position: relative;
}

.recruit-child .tag-wrap,
.interview .tag-wrap {
  position: absolute;
  top: 7em;
  width: 280px;
}

.recruit-child .tag-wrap .tag,
.interview .tag-wrap .tag {
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 .5em 0 .5em;
  padding: 0 1em;
  line-height: 20px;
  font-size: 10px;
  letter-spacing: .1em;
  white-space: nowrap;
  color: #fff;
  z-index: 1;
}

.recruit-child .tag-wrap .person-name,
.interview .tag-wrap .person-name {
  position: absolute;
  margin: 0;
  margin-top: 10px;
  padding: 2em 1em;
  line-height: 20px;
  font-size: 14px;
  letter-spacing: .1em;
  white-space: nowrap;
  width: 100%;
  height: auto;
  background-color: #fff;
  text-align: left;
}

.recruit-child .tag,
.recruit .tag,
.interview .tag {
  top: 0;
}

.message h2:not(.related-entry-heading):not(.rising-title) {
  margin-left: 40%;
  text-align: left;
  background-color: #d61642;
  border-left: solid 6px #e05071;
}

.interview h2:not(.related-entry-heading):not(.rising-title) {
  margin-left: 40%;
  text-align: left;
  border-left: solid 6px #217a9f;
  background-color: #2ca2d4;
  color: #fff;
  margin-top: 3.5em;
}

/*###### 働き方 ######*/
/*** ある一日の流れ ***/
.timeline {
  & .fa-sun {
    color: #f94b0e;
  }

  & .fa-moon {
    color: #f6c831;
  }
}

.timeline-list {
  list-style: none;
  padding-left: 0;
  position: relative;
  /*border-left: 3px solid #ccc;*/
  margin-left: 1em;
}

.timeline-list li {
  margin-bottom: 2em;
  position: relative;
  padding-left: 1.5em;
  display: grid;
  grid-template-columns: 7em 1fr;
}

.timeline-list time {
  font-weight: bold;
  display: block;
  margin-bottom: 0.3em;
  color: #333;
}

.timeline-list::before {
  content: '';
  position: absolute;
  left: 1px;
  top: 0;
  bottom: 0;
  width: 4px;
  background: #ccc;
}

.timeline-list li::before {
  content: '';
  position: absolute;
  left: -10px;
  top: 0.3em;
  width: 12px;
  height: 12px;
  background-color: #fff;
  border: 3px solid #0077cc;
  border-radius: 50%;
}

.timeline-content {
  /*display: inline-block;
background-color: #c00;*/
}

/*** 4勤2休シフトカレンダー例 ***/
table#tablepress-8 {
  & th {
    /*white-space: nowrap;*/
  }

  & td:not(:first-child),
  & th:not(:first-child) {
    border-left: 1px solid #f5c5d0;
  }

  & .row-3,
  & .row-4,
  & .row-6,
  & .row-7,
  & .row-9,
  & .row-10,
  & .row-12,
  & .row-13,
  & .row-15,
  & .row-16 {
    & td {
      border-top: none;
      border-bottom: none;
    }
  }

  & .fa-sun {
    color: #f94b0e;
  }

  & .fa-moon {
    color: #f6c831;
  }
}

/*###### 募集要項 ######*/
.job-info h2 .title-en {
  font-weight: bold;
  font-family: FuturaLTPro, Futura, San Francisco, Helvetica Neue, Arial, sans-serif;
  font-size: 150%;
  display: block;
}

.job-info h2 .title-ja {
  font-size: 80%;
}

/***アコーディオンメニュー ***/
ul.ac-menu.job-info li.open .button:before {
  color: #96d1ea;
}

ul.ac-menu.job-info li.close .button:before {
  color: #96d1ea;
}

ul.ac-menu.job-entry li.open .button:before {
  color: #96d1ea;
}

ul.ac-menu.job-entry li.close .button:before {
  color: #96d1ea;
}

.ac-menu.job-info h3 {
  background-color: #2ca2d4;
  color: #fff;
}

.ac-menu.job-entry h3 {
  background-color: #2ca2d4;
  color: #fff;
  margin-bottom: 2px;
}

.ac-menu.job-info h4 {
  margin: 0;
}

/*** リスト ***/
.job-info li dl>dd>dl dt {
  float: left;
  clear: left;
  width: 7em;
  text-align: right;
}

.job-info li dl>dd:not(.inline-block)>dl>dd {
  margin-left: 7.5em;
}

.job-info .inner>li div :last-child {
  margin-bottom: 0;
}

.job-info .inner>li div>dl>dt:before {
  content: "\f101";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  padding-right: 4px;
  color: #96d1ea;
}

.job-info .inner>li div>dl.contact dd dl dt {
  width: initial;
  width: auto;
}

.job-info .inner>li div>dl.contact dd dl dd {
  margin-left: 0;
  margin-left: auto;
}

.job-info .inline-block span {
  display: inline-block;
}

.job-info .inline-block span:not(:last-child):after {
  content: "、";
}

.job-info .inline-block dl dd {
  display: inline-block;
  margin: 0;
}

.job-info .inline-block.after-content>dl dd:not(:last-child):after {
  content: "、";
}

.job-info dd span.dt {
  font-weight: bold;
}

dd.job-title {
  text-decoration: underline;
  /*font-weight: bold;*/
}

dd.job-description {
  margin-bottom: 30px;
}

/*** エントリーフォーム ***/
.job-entry dl dt {
  float: left;
  clear: left;
  width: 11em;
  text-align: right;
}

.job-entry dl dd {
  margin-left: 11.5em;
}

.job-entry dl.questionnaire div:not(.input-wrap) {
  display: inline-block;
  font-weight: 500;
}

.job-entry dl.questionnaire div:not(.input-wrap):before {
  content: "\f152";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: #c2c5cc;
  margin-right: .5em;
}

.job-entry dl.questionnaire p {
  margin-top: 20px;
  margin-bottom: 10px;
}

.job-entry dl.questionnaire dd {
  margin-bottom: 20px;
}

.job-entry dl.questionnaire .hide {
  display: none;
}

.job-entry dl.questionnaire b {
  color: #c00;
}

/*###### 受託製造案内 ######*/
#kyotenList dl dt {
  clear: left;
  float: left;
  width: 6.5em;
  text-align: right;
  font-weight: bold;
}

#kyotenList dl dt span.month {
  display: inline-block;
  width: 2.5em;
}

#kyotenList dl dd {
  margin-left: 7.5em;
}

#kyotenList h4 {
  background-color: #d9edf7;
  border-bottom: none;
}

#kyotenList {
  display: none;
}

.trust.page .flex-container.flow>.flex-item:not(.sub) {
  height: 4.5em;
  box-sizing: border-box;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: .5em;
  margin-right: .1em;
}

.trust.page .flex-container.flow>.flex-item span {
  font-weight: bold;
  background-color: #2ca2d4;
  color: #fff;
  border: 4px solid #217a9f;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  margin-right: 1em;
}

.trust.page .flex-container.flow>.flex-item:not(.sub) span {
  padding: 1em;
}

.trust.page .flex-container.flow .sub>.flex-item {
  height: 2em;
  box-sizing: border-box;
  position: relative;
  display: block;
  margin-bottom: .5em;
  margin-right: .1em;
}

.trust.page .flex-container.flow .sub>.flex-item span {
  padding-top: 0;
}

.trust.page .flex-container.flow .sub:nth-of-type(1)>.flex-item span {
  width: 9em;
}

.trust.page .flex-container.flow .sub:nth-of-type(2)>.flex-item span {
  width: 6em;
}

.trust.page .flex-container.flow2 .sub:nth-of-type(4)>.flex-item span {
  width: 6em;
}

.trust.page .flex-container.flow>.flex-item:not(.sub):not(.double-arrow):after {
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 1.25em;
  bottom: 0;
  right: 0;
  color: #d61642;
}

.trust.page .flex-container.flow .sub .flex-item:after {
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  color: #d61642;
}

.trust.page .flex-container.flow>.flex-item.double-arrow {
  position: relative;
}

.trust.page .flex-container.flow2 .flex-item.double-arrow:after {
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  color: #1e73be;
}

.trust.page .flex-container.flow2 .flex-item.double-arrow:before {
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  display: block;
  position: absolute;
  top: 2.5em;
  bottom: 0;
  right: 0;
  color: #1e73be;
}

/*** grid layout ***/
.grid-container.photo {
  grid-template-columns: repeat(auto-fit, minmax(254px, 1fr));
  gap: 0.25em;
  place-items: center;
}

/*###### 環境への取組 ######*/
table#tablepress-5 {
  width: 100%;
  color: #444;
}

table#tablepress-5 td {
  padding-left: 1em;
  padding-right: 1em;
}

#chartTable {
  width: 100vw;
  max-width: 300px;
  margin: auto;
}

/*###### プライバシーポリシー/特商法 ######*/
.page.privacy-policy dl dt,
.page.tokushoho dl dt {
  font-weight: bold;
}

dd.mail-form-dd input[name="e1"] {
  width: 7em;
  margin-bottom: 10px;
}

dd.mail-form-dd input[name="e2"] {
  width: 10em;
  margin-bottom: 10px;
}

dd.mail-form-dd input[type="button"] {
  border-radius: 40px;
  border: none;
  background: #81d742;
  box-shadow: 0 3px 1px #ccc;
  color: #fff;
  transition: 0.3s;
  padding: .5em 1em;
  /*margin-top: 20px;*/
}

dd.mail-form-dd input[type="button"]:hover {
  background: #6db738;
}

dd.mail-form-dd input[type="button"]:focus {
  outline: 0;
  background: #81d742;
  box-shadow: 0 -3px 1px #ccc;
  transform: translateY(3px);
}

dl.mail-form-dl dt {
  clear: left;
  float: left;
  width: 8em;
}

dl.mail-form-dl dd {
  margin-left: 8.5em;
}

.tokushoho tr th {
  min-width: 8em;
}

/*###### reCAPTCHA v3 表示 ######*/
.grecaptcha-badge {
  margin-bottom: 60px;
}

/* ###### パララックス ###### */
.moving-wrap {
  transition: all 0.5s ease-out;
}

.moving-wrap.vertical {
  transform: translateY(2em);
  opacity: 0;
}

.moving-wrap.vertical.active {
  transform: translateY(0);
  opacity: 1;
}

.moving-wrap.horizontal {
  transform: translateX(-100%);
  opacity: 0;
}

.moving-wrap.horizontal.active {
  transform: translateX(0);
  opacity: 1;
}

.moving-wrap.rotate {
  transform: rotate(-15deg);
  opacity: 0;
}

.moving-wrap.rotate.active {
  transform: rotate(0);
  opacity: 1;
}

.moving-wrap.vertical.rotate {
  transform: translateY(50%) rotate(-45deg);
  opacity: 0;
}

.moving-wrap.vertical.rotate.active {
  transform: translateY(0) rotate(0);
  opacity: 1;
}

.moving-wrap.horizontal.reverse {
  transform: translateX(100%);
  opacity: 0;
}

.moving-wrap.horizontal.reverse.active {
  transform: translateX(0);
  opacity: 1;
}

.flex-container .flex-item.moving-wrap.horizontal:nth-of-type(2n) {
  transition-delay: 0.1s;
}

.grid-container .grid-item.moving-wrap.horizontal:nth-of-type(2n) {
  transition-delay: 0.1s;
}

.moving-wrap.aligncenter {
  text-align: center !important;

  /* 業務内容ページ */
  & p {
    text-align: left;
  }
}

/*###### 非表示項目 ######*/
body.home .date-tags,
.page .date-tags,
.interview .date-tags,
.single.item .date-tags,
body.home .article-header .sns-share,
.infotext,
.chart-table {
  display: none;
}

/*** 通知バー ***/
body:not(.home) .notice-area {
  display: none;
}

.contact .sns-share,
.contact .sns-follow,
.privacy-policy .sns-share,
.privacy-policy .sns-follow {
  display: none;
}

.single.item h1.entry-title {
  display: none;
}

.postid-6059 .sns-share,
.postid-6094 .sns-share {
  display: none;
}

/*###### モバイルメニュー ######*/
/*** モバイルヘッダーメニュー ***/
.mobile-header-menu-buttons {
  .logo-menu-button .menu-button-in {
    padding-left: 10px;
    padding-right: 10px;

    .site-logo-image {
      opacity: 0;
      animation: logoFalling 1.5s ease 0.5s alternate forwards;
    }
  }
}

/*** サブメニュー折りたたみ ***/
.navi-menu-content .button>.sub-menu:not(.active) {
  display: none;
}

/* ハンバーガーメニューアニメーション */
.mobile-header-menu-buttons .navi-menu-button label.menu-button-in {
  overflow: hidden;
  display: block;
  position: relative;
  width: 100%;
  height: 40px;
  z-index: 0;
  margin: auto;
}

.mobile-header-menu-buttons .navi-menu-button a.menu-button-in .menu-caption {
  display: none;
}

.mobile-header-menu-buttons .navi-menu-button a.menu-button-in .menu-icon span {
  color: #fff;
}

.mobile-header-menu-buttons .navi-menu-button a.menu-button-in .menu-icon span.fas {
  font-size: 27px;
  margin-right: .6em;
}

.mobile-header-menu-buttons .navi-menu-button a.menu-button-in .menu-icon span.cart-totalquantity {
  position: absolute;
  right: 0;
  bottom: 0;
  margin: auto;
  margin-right: .1em;
}

.mobile-header-menu-buttons .navi-menu-button:last-child a.menu-button-in .menu-icon span {
  color: #29a2d4;
}

.mobile-header-menu-buttons li.navi-menu-button {
  border-left: 1px solid #fff;
  background-color: #29a2d4;
}

.mobile-header-menu-buttons li.navi-menu-button:last-child {
  border-left: 1px solid #29a2d4;
  background-color: #fff;
}

.mobile-header-menu-buttons .navi-menu-button label.menu-button-in span,
.mobile-header-menu-buttons .navi-menu-button label.menu-button-in:before,
.mobile-header-menu-buttons .navi-menu-button label.menu-button-in:after {
  display: block;
  position: absolute;
  /*top: 5px;*/
  /*Cocoonバージョン: 2.7.3.1で変更*/
  top: 0;
  /*Cocoonバージョン: 2.7.3.1で変更*/
  bottom: 0;
  left: 0;
  right: 0;
  width: 27px;
  height: 2px;
  margin: auto;
  background-color: #29a2d4;
}

.mobile-header-menu-buttons .navi-menu-button .navi-menu-icon {
  display: none;
}

.mobile-header-menu-buttons .navi-menu-button label.menu-button-in span {
  overflow: hidden;
  z-index: 1;
}

.mobile-header-menu-buttons .navi-menu-button label.menu-button-in:before {
  z-index: 2;
  transform: translate(0, -9px);
  content: "";
}

.mobile-header-menu-buttons .navi-menu-button label.menu-button-in:after {
  z-index: 2;
  transform: translate(0, 9px);
  content: "";
}

.mobile-header-menu-buttons .navi-menu-button label.menu-button-in span {
  opacity: 1;
  transition: opacity 300ms 100ms, transform .3s;
}

.mobile-header-menu-buttons .navi-menu-button label.menu-button-in:before,
.mobile-header-menu-buttons .navi-menu-button label.menu-button-in:after {
  transition: transform 400ms;
}

.mobile-header-menu-buttons .navi-menu-button #navi-menu-input:checked+label.menu-button-in span {
  opacity: 0;
  transform: translateX(-100%);
  transition: transform .3s, opacity .3s .1s;
}

.mobile-header-menu-buttons .navi-menu-button #navi-menu-input:checked+label.menu-button-in:before {
  transform: rotate(125deg) translate(-1px, -3px);
}

.mobile-header-menu-buttons .navi-menu-button #navi-menu-input:checked+label.menu-button-in:after {
  transform: rotate(-125deg) translate(1px, -3px);
}

.mobile-header-menu-buttons .navi-menu-button .navi-menu-content {
  padding-top: 20px;
  width: 40%;
  min-width: 18em;
  background-color: rgba(255, 255, 255, 0.9);
}

.mobile-header-menu-buttons .navi-menu-button .navi-menu-content .menu-item-13881 {
  display: none;
}

.mobile-header-menu-buttons .navi-menu-button .navi-menu-close-button {
  display: none;
}

.navi-menu-content .menu-item:not(.current-menu-item)>a:hover:after {
  content: "\f72f";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-left: .5em;
  color: #29a2d4;
  display: inline-block;
  transform: rotate(45deg);
  vertical-align: bottom;
}

.navi-menu-content .current-menu-item>a:after {
  content: "\f00c";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-left: .5em;
  color: #d51542;
}

/*** モバイルフッターメニュー ***/
.mobile-footer-menu-buttons .navi-menu-button .menu-button-in,
.mobile-footer-menu-buttons .home-menu-button>a,
.mobile-footer-menu-buttons .search-menu-button,
.mobile-footer-menu-buttons .top-menu-button>a,
.mobile-footer-menu-buttons .sidebar-menu-button .menu-button-in,
.mobile-footer-menu-buttons .menu-button>a {
  color: #2ca2d4;
}

.mobile-footer-menu-buttons .sidebar-menu-button .sidebar-menu-content {
  padding-top: 20px;
  width: 40%;
  min-width: 18em;
  background-color: rgba(255, 255, 255, 0.9);
}

.mobile-footer-menu-buttons .sidebar-menu-button .sidebar-menu-content .sidebar {
  background-color: transparent;
}

.mobile-footer-menu-buttons .sidebar-menu-button .sidebar-menu-content .sidebar input {
  background-color: rgba(255, 255, 255, 0.5);
}

.mobile-footer-menu-buttons .sidebar-menu-close-button {
  color: #2ca2d4;
}

.mobile-footer-menu-buttons .sidebar-menu-button .sidebar-menu-content .sidebar input:focus {
  outline-color: #2ca2d4;
}

/*###### トップへ戻るボタン ######*/
.go-to-top-button {
  border-radius: 50%;
}

/*###### サイトマップ ######*/
div.sitemap ul li {
  list-style: none;
}

div.sitemap ul li:before {}

.sitemap .entry-title:before {}

/*###### 404 ######*/
body.error404 {
  .entry-title {
    display: none;
  }
}

/*###### テスト ######*/
.ch-regist-button a {
  background-color: #ff0000;
  color: #fff;
  padding: .25em 1em;
  border-radius: 10px;
  display: inline-block;
  font-weight: bold;
  text-decoration: none;
}

.ch-regist-button a:hover {
  opacity: 0.8;
}

/* 商品一覧20241121テスト */
.grid-container.catbox.version-2 {
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));

  .grid-item {
    display: block;

    .sainitemimg {
      float: left;
      width: 20%;
      margin-right: 10px;
    }

    .storycontent p {
      margin-bottom: 0;
    }

    .goto-wrap {
      text-align: right;
      margin-bottom: 10px;

      & a {
        display: inline-block;
        font-size: 90%;
        line-height: 130%;
        background-color: #eb8ba1;
        color: #fff;
        width: auto;
        padding: .25em .5em;
        border-radius: 10px;
      }

      & a:hover {
        background-color: #d61642;
      }
    }

    .status-wrap {
      text-align: right;

      & span {
        display: inline-block;
      }

      .price {
        font-size: 120%;
        font-weight: bold;
      }

      .tax {
        font-size: 90%;
        font-style: normal;
      }
    }
  }
}

.grid-container.catbox.version-2 .status-wrap {
  text-align: right;
  margin-bottom: 0;

  .quantity {
    display: inline-block;
  }
}

/*###### カルーセル ######*/
.home-test,
.home {
  .j-carousel {
    position: relative;
    width: 100%;
    /* 親要素幅を完全に埋める */
    overflow: hidden;
  }

  .j-carousel-track {
    display: flex;
    transition: transform 0.5s ease-in-out;
    /*will-change: transform;*/
  }

  .j-carousel-box {
    flex: 0 0 20%;
    /* 親要素幅を5等分 */
    box-sizing: border-box;
    padding: 10px;
    display: flex;
    /* フレックスボックスを有効化 */
    justify-content: center;
    /* 横方向で中央揃え */
    align-items: flex-end;
    /* 縦方向で下揃え */
    text-align: center;
    /* テキストの中央揃え */
    position: relative;
    /* 必要に応じて他の要素との調整に利用可能 */
    padding: 0;
  }

  .j-carousel-box a {
    display: flex;
    /* リンク要素もフレックスボックスとして調整 */
    justify-content: center;
    /* 横方向で中央揃え */
    align-items: flex-end;
    /* 縦方向で下揃え */
    width: 100%;
    /* リンクがボックス全体をカバー */
    height: 100%;
    /* リンクがボックス全体をカバー */
    text-decoration: none;
  }

  .j-carousel-box img {
    width: 30%;
    /* ボックス幅に対して30% */
    max-width: 100%;
    /* ボックス幅を超えないように制限 */
    height: auto;
    /* 縦横比を維持 */
    display: block;
    /* 隙間を排除 */
  }

  /* .j-carousel-controls: ボタンを囲む親要素 */
  .j-carousel-controls {
    position: absolute;
    top: 50%;
    width: 100%;
    /* カルーセル全体をカバー */
    transform: translateY(-50%);
    /* ボタンを上下中央に配置 */
    pointer-events: none;
    /* 親要素へのイベントを無効化 */
    z-index: 10;
    /* ボタンを前面に */
  }

  /* ボタン共通スタイル */
  .j-carousel-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background-color: transparent;
    color: rgba(97, 185, 223, 0.5);
    border: none;
    cursor: pointer;
    font-size: 35px;
    pointer-events: auto;
    /* ボタン自体はクリック可能に */
  }

  /* 左ボタン */
  .j-carousel-btn.prev {
    left: 0px;
  }

  /* 右ボタン */
  .j-carousel-btn.next {
    right: 0px;
  }

  /* ホバースタイル（オプション） */
  .j-carousel-btn:hover {
    color: rgba(97, 185, 223, 0.7);
  }
}

/*### Swiper ###*/
.j-swiper {
  width: 100%;
  margin: 0 auto;
  margin-bottom: 20px;
}

.j-swiper .swiper-slide {
  display: flex;
  align-items: flex-end;
  /* 下揃え */
  justify-content: center;
  height: auto;
  /* スライドの高さは中身によって決まる */
  min-height: 1px;
  /* 高さ0回避の保険 */
}

.j-swiper .swiper-slide>a {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  /* aタグ内の画像も下揃え */
}

.j-swiper img {
  display: block;
  width: 60%;
  max-width: 150px;
  height: auto;
  object-fit: contain;
}

/* ナビゲーションボタン */
.swiper-button-prev,
.swiper-button-next {
  color: rgba(97, 185, 223, 0.5);
  font-size: 2rem;
  z-index: 10;
}

.swiper-button-prev::after,
.swiper-button-next::after {
  display: none !important;
  /* Swiperのデフォルト矢印を非表示にする */
  content: '';
  /* 念のため */
}

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1319px以下*/
@media screen and (max-width: 1319px) {}

/*1281px以上*/
@media screen and (min-width: 1281px) {}

/*1200px以下*/
@media screen and (max-width: 1200px) {}

/*1070px以下*/
@media screen and (max-width: 1070px) {}

/*1024px以上*/
@media screen and (min-width: 1024px) {
  .navi-footer-in {
    margin-left: 200px;
  }
}

/*1023px以下*/
@media screen and (max-width: 1023px) {

  /* ヘッダー */
  body:not(.home) .logo-header {
    display: none;
  }

  body.topics,
  body.category-topics,
  body.category-kiraribito,
  body.category-interview,
  body.category-item,
  body.category-itemreco,
  body.category-recruit,
  body.usces-cart,
  body.usces-member,
  body.category,
  body.archive,
  body.search,
  body.error404,
  body.blog,
  body.sitemap,
  body.contact,
  body.tokushoho,
  body.privacy-policy {
    #header-container {
      display: none;
    }
  }

  /* ホーム */
  #homeHeaderBg video {
    display: none;
  }

  #homeHeaderBg img {
    display: block;
  }

  .home.page .entry-title {
    font-size: 150%;
  }

  /*ナビゲーション*/
  #navi {
    display: none;
  }

  .mobile-menu-buttons {
    align-items: stretch;
    /*Cocoon2.6.9継承*/
  }

  .mobile-menu-buttons>li {
    padding-top: 3px;
    /*Cocoon2.6.9継承*/
  }
}

/*1090px以上*/
@media screen and (min-width: 1090px) {}

/*1240px以下*/
@media screen and (max-width: 1240px) {

  /* ホーム動画 */
  .home.page .entry-title {
    font-size: 150%;
  }
}

/*1030px以下*/
@media screen and (max-width: 1030px) {
  .company-data-wrap .title {
    font-size: 48px;
  }
}

/*834px以下（追加）*/
@media screen and (max-width: 834px) {

  /* 採用情報・社員インタビュー*/
  .recruit-child .tag-wrap,
  .interview .tag-wrap {
    position: static;
    /*margin-top: 0;*/
    margin-top: .5em;
  }

  .recruit-child .tag-wrap .tag,
  .interview .tag-wrap .tag {
    position: static;
    position: relative;
  }

  .recruit-child .tag-wrap .person-name,
  .interview .tag-wrap .person-name {
    position: static;
    margin-top: -10px;
  }

  /* 社長メッセージ・社員インタビュー */
  .message h2:not(.related-entry-heading):not(.rising-title),
  .interview h2:not(.related-entry-heading):not(.rising-title) {
    margin-left: 0;
    margin-left: auto;
    border-left: none;
  }

  /*** 働き方 ***/
  /*** ある一日の流れ ***/
  .timeline-list {
    margin-left: 0;
  }

  .timeline-list::before {
    left: 27px;
  }

  /* メンバーページ */
  .usces-member #memberpages .loginbox,
  .usces-member #memberpages #newmember .customer_form {
    width: 100%;
  }

  /*ヘッダー画像*/
  .environment .header {
    background-image: url(https://kinkisain.co.jp/img/header-img-environment-policy-m.jpg);
  }

  /* フッター */
  .navi-footer-in {
    & ul.menu-footer {
      & li {
        & a {
          border: 0;
        }
      }

      & li:last-child a {
        border: 0;
      }
    }
  }
}

/*768px以下*/
@media screen and (max-width: 768px) {
  .company-data-wrap .company-img-wrap {
    width: 100%;
    float: none;
    border: none;
    margin-top: 8px;
    margin-bottom: 8px;
  }

  .company-data-wrap .title {
    position: static;
    width: 100%;
    margin: auto;
    text-align: center;
  }

  .company-data-wrap .text-wrap {
    width: 100%;
    margin: auto;
    height: auto;
  }

  /* 会社概要 */
  .open-info {
    padding: 0;
  }

  .open-info h2 {
    position: static;
    float: none;
    width: 100%;
    text-align: center;
    margin: 0;
  }

  .open-info .content-wrap {
    margin-left: auto;
  }

  /* 募集要項 */
  .job-entry dl dt {
    float: none;
    width: 100%;
    text-align: left;
  }

  .job-entry dl dd {
    margin-left: 0;
    margin-left: auto;
  }

  /* お問い合わせ */
  dl#Inquiry dt {
    float: none;
    width: 100%;
    text-align: left;
  }

  dl#Inquiry dd {
    margin-left: 0;
    margin-left: auto;
  }

  dl.inquiry {
    & dt {
      float: none !important;
      width: 100% !important;
      text-align: left !important;
    }

    & dd {
      margin-left: 0 !important;
      margin-left: auto !important;
    }
  }

  /*Welcart商品ページ*/
  .single.item .itemcaption dl,
  .single.item .item-description dl {
    margin-left: 0;
    margin-left: auto;
  }

  .single.item .itemcaption ul,
  .single.item .item-description ul {
    margin-left: 0;
    margin-left: auto;
  }

  /* 商品詳細ページ */
  /*** grid layout ***/
  .grid-container.item-detail {
    /*テンプレート変更20231209*/
    grid-template-columns: 1fr;
  }

  /*プライバシー、特商法*/
  dl.mail-form-dl dt {
    float: none;
    widows: 100%;
  }

  dl.mail-form-dl dd {
    margin-left: 0;
    margin-left: auto;
    margin-bottom: 20px;
  }

  /*### カルーセル ###*/
  .home-test,
  .home {
    .j-carousel-box img {
      width: 50%;
    }
  }

  /*### grid layout ###*/
  .grid-container.button {
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));

    .grid-item {
      & span.item-wrap {}

      & span.item-title {
        font-size: 100%;
      }

      & span.item-description {
        font-size: 80%;
      }
    }
  }

  /*### カルーセル ###*/
  .j-carousel-btn {
    display: none;
  }

  /*### Swiper ###*/
  .swiper-button-prev,
  .swiper-button-next {
    display: none;
  }
}

/*480px以下*/
@media screen and (max-width: 480px) {

  /* 共通 */
  .clearfix.large-photo>img,
  .clearfix.large-photo>p img,
  .clearfix.large-photo>.wp-block-image {
    max-width: 100%;
  }

  body:not(.home):not(.sitemap):not(.topics):not(.contact):not(.tokushoho):not(.privacy-policy) .entry-title {
    font-size: 280%;
  }

  /*** ページリンクボタン ***/
  div.request-wrap {
    font-size: 150%;
  }

  a.page-link-btn {
    font-weight: 700;
    letter-spacing: 0em;
    font-size: 1.0rem;
    padding: 1.0rem 2.2rem 1.2rem 1.0rem;
  }

  a.page-link-btn i.fa,
  a.page-link-btn i.fas {
    margin-right: 0.5rem;
  }

  a.page-link-btn:before {
    font-size: 1.0rem;
    top: calc(50% - .6rem);
    right: 1.0rem;
  }

  /* ホーム */
  .home.page .entry-title {
    font-size: 110%;
  }

  /* flex box */
  .home.page .flex-container .flex-item,
  .recruit.page .flex-container .flex-item,
  .recruit-child.page .flex-container .flex-item,
  .company.page .flex-container .flex-item,
  .products.page .flex-container .flex-item {
    width: 100%;
  }

  /* 受託製造 */
  #tablepress-1 {
    display: none;
  }

  #kyotenList {
    display: block;
  }

  /*Welcart商品詳細ページ*/
  .entry-content #itempage .itemimg {
    float: none;
    width: 100%;
  }

  /*** 採用募集フォーム ***/
  dl.inquiry.entry-form dd {
    & span {

      & input:not([type="radio"]):not([type="checkbox"]),
      & select {
        width: 100%;
        min-width: auto;
      }
    }
  }

  .job-info li dl>dd,
  .job-info li dl>dd>dl {
    margin-left: 0;
  }

  /*### カルーセル ###*/
  .home-test,
  .home {
    .j-carousel-box img {
      width: 70%;
    }
  }
}

/*367px以下*/
@media screen and (max-width: 367px) {

  /*### grid layout ###*/
  .grid-container.button.menu {
    .grid-item {
      /*height: 100px;*/
      aspect-ratio: 16 / 5;

      & span.item-wrap {
        /*position: absolute;
   display: flex;*/
        /*top: 0;*/
        bottom: 50%;

        /*bottom: 0;
   left: 0;
   right: 0;
   align-items: center;
   justify-content: center;
   flex-direction: column;
   line-height: 110%;
   transition: all .3s;
   margin-left: 1em;
   margin-right: 1em;*/
        /*align-items: flex-start;*
   padding-top: 10px;*/
        & span.item-title {
          font-size: 150%;
        }

        & span.item-description {
          font-size: 120%;
        }
      }

      & img {
        transform: translateY(-30%);
      }
    }
  }
}