@charset "UTF-8";

/*!
Theme Name: niconico-genki
Author: J.
Author URI: https://web.ekaki-j.com
Template:   cocoon-master
Version:    1.1.3
Text Domain:  niconico-genki
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/
/*###### 定義 ######*/
:root {
  /* Pink */
  --shiraz: #aa003e;
  --blush: #bf406e;
  --puce: #d5809f;
  --castro: #55001f;
  --azalea: #eeccd8;
  --vanilla-ice: #f2d9e2;
  --carousel-pink: #f7e6ec;
  --lola: #ddccd2;
  --sepia-black: #2b0010;
  --timberwolf: #d9ced2;
  --bon-Jour: #e4dddf;
  /* Red */
  --hot-today: #aa8e00;
  --piano: #2b292a;
}

/*###### ローディング ######*/
#loading-container {
  width: 100vw;
  height: 100vh;
  transition: all 1s;
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  opacity: 0.9;

  .loading {
    width: 80px;
    height: 80px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;

    .inner-circle {
      position: absolute;
      top: 0;
      right: 0;
      width: 50px;
      height: 50px;
      border-radius: 50%;
      background-color: rgba(170, 0, 62, 0.6);
      animation: loading 2s linear infinite;
    }

    .inner-circle.circle-2 {
      animation-delay: .4s;
    }

    .inner-circle.circle-3 {
      animation-delay: .8s;
    }

    .inner-circle.circle-4 {
      animation-delay: 1.2s;
    }

    .inner-circle.circle-5 {
      animation-delay: 1.6s;
    }
  }
}

#loading-container.loaded {
  .loading .inner-circle {
    animation: fadeOut .5s forwards;
  }

  animation: loaded 1s forwards;
}

/*###### 共通 ######*/
* {
  -webkit-tap-highlight-color: transparent;
  /* 強調をなくす */
}

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

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

.clearfix {
  display: block;
}

.cat-link:hover {
  background-color: var(--shiraz);
}
input:read-only {
  background-color: #ccc;
  color: #666;
}
button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}

.speech-balloon ul {
  margin-bottom: 0;
  padding-left: 0;
}

.speech-balloon.question {
  & ul li {
    list-style: none;
    text-indent: -1.5em;
    padding-left: 1.5em;
  }

  & ul li:before {
    content: "\f059";
    font-family: "Font Awesome 5 Free";
    font-weight: 400;
    margin-right: .5em;
    color: #ccbb66;
  }
}

figure,
figure figcaption {
  text-align: center;
}

.column-wrap div {
  text-align: left;
}

.free-dial-mark {
  width: 2em;
  height: auto;
  margin-right: 0.5em;
}

body a.tel-num .anchor-icon {
  display: none;
}

.float-box.left {
  float: left;
  margin-right: 25px;
  width: 50%;
  display: inline-block;

  & img {
    display: block;
  }
}

.float-box.right {
  float: right;
  margin-left: 25px;
  width: 50%;
  display: inline-block;

  & img {
    display: block;
  }
}

div.mb-40 {
  margin-bottom: 40px;
}

/*** flex box ***/
body .flex-container {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  justify-content: center;
}

ul.flex-container,
ol.flex-container {
  list-style: none;
}

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

    & a {
      display: block;
      text-decoration: none;
    }

    & dd {
      margin-left: 0;
    }
  }

  .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;
  }
}

h3.with-source {
  margin-bottom: 0;
}

p.source {}

/*** リスト ***/
ul.komelist {
  list-style: none;
  padding-left: 0;

  & li {
    padding-left: .5em;
    text-indent: -.5em;
  }

  & li:before {
    content: "*";
  }
}

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

ol.custom-number {
  margin-left: 0;
  padding-right: 0;
  list-style-type: none;

  & li {
    counter-increment: step-counter;
    padding-bottom: 5px;
  }

  & li::before {
    content: counter(step-counter);
    margin-right: 5px;
    position: relative;
    top: -1px;
    font-size: 80%;
    background-color: var(--shiraz);
    color: var(--azalea);
    font-weight: bold;
    padding: 3px 9px;
    border-radius: 18px;
  }
}

.dl-single-line>dt {
  font-weight: bold;
  float: left;
  clear: left;
  margin-right: 0.5em;
}

dl dt {
  font-weight: bold;

  & span {
    font-weight: normal;
  }
}

.dl-inline-block-dd>dd {
  display: inline-block;
}

dl.komelist dt {
  clear: left;
  float: left;
  margin-right: 0.5em;
}

dl.check>dt,
dl.circle>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: #ccbb66;
}

dl.circle>dt:before {
  content: "\f111";
  font-family: "Font Awesome 5 Free";
  font-weight: 500;
  margin-right: .5em;
  color: var(--shiraz);
}

dl.number>dt {
  /*text-indent: -1.5em;
padding-left: 1.5em;*/
  position: relative;
  padding-left: 2.5em;
  text-indent: -2.5em;
  line-height: 100%;
  margin-bottom: .5em;
}

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: var(--azalea);
  color: var(--shiraz);
}

ol.number>li dl dt:before {
  background-color: var(--shiraz);
  color: var(--azalea);
}

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.num1:before,
ol.number > li.num1 dl dt:before {
content: "1";
}
dl.number > dt.num2:before,
ol.number > li.num2 dl dt:before {
content: "2";
}
dl.number > dt.num3:before,
ol.number > li.num3 dl dt:before {
content: "3";
}
dl.number > dt.num4:before,
ol.number > li.num4 dl dt:before {
content: "4";
}
dl.number > dt.num5:before,
ol.number > li.num5 dl dt:before {
content: "5";
}
dl.number > dt.num6:before,
ol.number > li.num6 dl dt:before {
content: "6";
}*/
/*** カウンター連番 ***/
/* カウンターのリセット */
.counter-wrap {
  counter-reset: number;
  /* dt 用のカウンターをリセット */
}

/* dt のスタイル調整 */
.counter-wrap dl:not(.check)>dt {
  display: flex;
  align-items: center;
  gap: 0.5em;
  /* 番号とテキストの間隔 */
  line-height: 1.4;
  margin-bottom: 0.5em;
}

/* 番号をつける */
.counter-wrap dl:not(.check)>dt::before {
  content: counter(number);
  /* カウンターの値を表示 */
  counter-increment: number;
  /* カウンターをインクリメント */
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2em;
  height: 2em;
  min-width: 2em;
  border-radius: 50%;
  font-weight: bold;
  background-color: var(--azalea);
  color: var(--shiraz);
  /*flex-direction: column;*/
  /* 番号とテキストを縦並びに */
  flex-shrink: 0;
}

ul.check,
ul.circle {
  list-style: none;
  padding-left: 0;
  overflow: hidden;
  /* フロートの影響を防ぐ 20250120追加 */
}

ul.check>li,
ul.circle>li {
  /*text-indent: -1.5em;
padding-left: 1.5em;*/
  display: flex;
  /* アイコンとテキストを同じ行に */
  align-items: center;
  /* 垂直方向の位置を中央に */
  gap: 0.5em;
  /* アイコンとテキストの間隔 */
  padding-left: 0;
  /* `text-indent` は不要なので削除 */
}

ul.check>li:before {
  content: "\f00c";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  /*margin-right: .5em;*/
  display: inline-flex;
  /* アイコンをインラインフレックスに */
  align-items: center;
  /* 垂直方向の位置を中央に */
  justify-content: center;
  color: #ccbb66;
}

ul.circle>li:before {
  content: "\f111";
  font-family: "Font Awesome 5 Free";
  font-weight: 500;
  margin-right: .5em;
  color: var(--shiraz);
  display: inline-flex;
  /* アイコンをインラインフレックスに */
  align-items: center;
  /* 垂直方向の位置を中央に */
  justify-content: center;
}

dl.three-values {
  .dl-single-line {
    & dt {
      width: 6em;
    }

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

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

  & a .anchor-icon {
    display: none;
  }
}

.request-wrap a .anchor-icon {
  /*display: none;*/
}

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;

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

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

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

a.page-link-btn.faq {
  line-height: 1.3;
  font-size: 1.0rem;
  background-color: var(--carousel-pink);
  padding: .5rem 1rem .5rem 1rem;
  /*border-radius: 5px !important;*/
  margin-top: 8px;

  & i.fa,
  & i.fas {
    margin-right: .25rem;
  }
}

a.page-link-btn:not(.item-list):not(.faq):before {
  /*20231222変更*/
  font-family: 'Font Awesome 5 Free';
  font-size: 1.3rem;
  line-height: 1;
  position: absolute;
  top: calc(50% - .6rem);
  right: 1rem;
  margin: 0;
  padding: 0;
  content: '\f054';
}

/* 清心元 */
.shoyaku {
  & a.page-link-btn {
    border-radius: 40px;
  }

  & a.page-link-btn.contact {
    color: #fff;
    background-color: var(--shiraz);
  }

  & a.page-link-btn.contact:hover {
    background: var(--azalea);
    color: var(--shiraz);
  }
}

/* 会員限定 */
.members-only {
  & a.page-link-btn {
    border-radius: 40px;
  }

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

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

/* 商品一覧ページ */
/*20231222追加*/
.page.supplement,
.page.product-list {
  & div.request-wrap {
    /*display: flex;
 flex-direction: column;
 align-items: center;*/
    font-size: 100%;
    /*margin-bottom: 20px;*/
  }
}

a.page-link-btn.item-list {
  border-radius: 1.5em;
  border: none;
  background: #ff8000;
  color: #fff;
  transition: 0.3s;
  margin: auto;
  margin-top: 10px;
  margin-bottom: 10px;
  width: auto;
  text-align: center;
  padding: .5em .8em .8em .8em;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 100%;

  & i.fa,
  & i.fas {
    margin-right: .5rem;
  }
}

/*** 内部リンクボタン ***/
a.internal-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;*/
  border-radius: 0.5rem 40px 40px 0.5rem;
  font-size: 1.5rem;
  padding: 1.5rem 3rem 1.5rem 2rem;
  color: #fff;
  background-color: #005bab;

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

a.internal-link-btn:hover {
  opacity: 0.8;
}

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

a.internal-link-btn.shoyaku {
  /*border-radius: 0.5rem 40px 40px 0.5rem;*/
  color: var(--lola);
  background-color: var(--castro);

  & i.fa,
  & i.fas {
    color: var(--hot-today);
  }
}

a.internal-link-btn.shoyaku:hover {
  background-color: var(--sepia-black);
}

.request-wrap.supplement {
  margin-top: 20px;
}

a.internal-link-btn.supplement {
  /*border-radius: 0.5rem 40px 40px 0.5rem;*/
  color: var(--shiraz);
  background-color: var(--azalea);

  & i.fa,
  & i.fas {
    color: var(--shiraz);
  }
}

a.internal-link-btn.supplement:hover {
  background-color: var(--vanilla-ice);
}

a.internal-link-btn.recuruit {
  /*border-radius: 0.5rem;*/
  color: var(--shiraz);
  background-color: var(--azalea);

  & i.fa,
  & i.fas {
    color: var(--shiraz);
  }
}

a.internal-link-btn.recuruit:hover {
  background-color: var(--vanilla-ice);
}

/*** 印刷ボタン ***/
.print-button {
  border: solid 2px var(--azalea);
  border-radius: 10px;
  background-color: var(--shiraz);
  padding: .5em 1em;
  color: #fff;
  transition: all .5s;
}

.print-button:hover {
  border: solid 2px var(--shiraz);
  background-color: var(--azalea);
  color: var(--shiraz);
}

.print-button:before {}

/*** ダウンロードボタン ***/
.dl-button {
  border: solid 2px var(--azalea);
  border-radius: 10px;
  background-color: var(--shiraz);
  padding: .5em 1em;
  color: #fff;
  transition: all .5s;

  & a {
    color: #fff;
    text-decoration: none;

    .anchor-icon {
      display: none;
    }
  }
}

.dl-button.pdf {
  /*margin-left: -150px;*/
  border: solid 2px var(--azalea);
  border-radius: 10px;
  background-color: var(--shiraz);
  padding: .5em 1em;
  color: #fff;
  transition: all .5s;

  & a {
    color: #fff;
    text-decoration: none;

    .anchor-icon {
      display: none;
    }
  }

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

.dl-button.pdf.vi {
  font-size: 1.3rem;
}

.dl-button:hover {
  border: solid 2px var(--shiraz);
  background-color: var(--azalea);
  color: var(--shiraz);

  & a {
    color: var(--shiraz);
  }
}

.dl-button-wrap {
  text-align: center;
  margin: 0;
  padding: 0;
}

/*** LINE登録 ***/
.line-container {
  border: 2px solid #06c755;
  border-radius: 4px;
  padding: 1em;
}

/*** カラム ***/
/*body.category #main,*/
body.error404 #main,
body.search #main

/*,
body.blog #main*/
  {
  width: 100%;
  margin-right: 0;
}

/*body.category #sidebar,*/
body.error404 #sidebar,
body.search #sidebar

/*,
body.blog #sidebar*/
  {
  display: none;
}

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

  .grid-item {
    & a {
      display: flex;
      align-items: center;
    }

    display: flex;
    align-items: center;
  }
}

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

/*###### ヘッダー ######*/
.header-in .logo {
  text-align: left;
  margin-left: 20px;
  margin-right: 20px;
}

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

.header-in .tagline {
  /*text-align: left;*/
  display: none;
}

/*** ヘッダー挿入 ***/
.header-in {
  position: relative;

  .header-item-wrap {
    display: flex;
    flex-direction: row-reverse;
    position: absolute;
    right: 0;
    bottom: 0;
    margin-bottom: 0;
    margin-right: 20px;
    font-weight: normal;
    margin-left: 400px;
    z-index: 1;

    .title {
      color: #444;
    }

    .description {
      color: #fff;
      font-size: 14px;

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

    .description>span {
      display: block;

      & span:not(:last-child) {
        margin-right: .5em;
      }
    }

    .header-tel-num,
    .header-contact-button {
      text-align: center;
    }

    .tel-num {
      margin-top: 0;

      & a {
        color: #fff;
        text-decoration: none;
        transition: all .5s;
        position: relative;
        font-size: 200%;
        line-height: 0;
      }

      & a:after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 0;
        border-bottom: 2px solid var(--azalea);
        transition: all .5s;
      }
    }
  }
}

.header-item-wrap>div {
  margin-left: 10px;
}

.header-item-wrap .tel-num a:hover {
  color: var(--azalea);
}

.header-item-wrap .tel-num a:hover:after {
  width: 100%;
}

.header-contact-button .contact-button {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 150%;
  margin-bottom: 10px;
}

.header-contact-button .contact-button a {
  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: 2rem;
  font-size: 1.0rem;
  padding: 1.0rem 2.5rem 1.0rem 1.5rem;
}

.header-contact-button .contact-button a {
  color: var(--shiraz);
  background-color: #fff;
}

.header-contact-button .contact-button a:hover {
  background: var(--azalea);
}

.header-contact-button .contact-button a i.fa,
.header-contact-button .contact-button a i.fas {
  margin-right: .5rem;
}

.header-contact-button .contact-button a:before {
  font-family: 'Font Awesome 5 Free';
  font-size: 1.1rem;
  line-height: 1;
  position: absolute;
  top: calc(50% - .55rem);
  right: 1rem;
  margin: 0;
  padding: 0;
  content: '\f054';
}

/*** ナビゲーション ***/
#navi {
  top: 0;
  z-index: 2;
  width: 100%;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.4);
  transition: all 0.3s;
  margin: auto;
}

#navi.fixed {
  position: fixed;
  left: 0;
  right: 0;
  margin: auto;
  background-color: var(--shiraz);
  width: 50%;
  min-width: 1255px;
  border-radius: 0 0 20px 20px;
  transition: all 0.3s;
}

#navi:not(.fixed) .navi-in>ul>li>a {
  animation: mainNaviA .6s ease forwards;
  opacity: 0;
}

#navi.fixed li {
  background-color: var(--shiraz);
}

#navi.fixed li a {
  color: #fff;
}

#navi #navi-in.navi-in>ul>li:first-child {
  width: 40px;
  padding-top: 5px;
  padding-bottom: 5px;
  margin-right: 20px;
  height: auto;
  display: none;
}

#navi.fixed #navi-in.navi-in>ul>li:first-child {
  display: block;
  overflow: hidden;
}

#navi.fixed .navi-in>ul>li:first-child a .caption-wrap {
  /*position: relative;*/
  /*overflow: hidden;*/
  background-image: url(./img/home-icon-w.png);
  background-repeat: no-repeat;
  background-size: contain;
  animation: logoRising 1.0s ease alternate forwards;
  opacity: 0;
}

#navi .navi-in>ul>li:first-child a .caption-wrap div {
  display: none;
}

/*** メニューボタン ***/
.navi-in .menu-header li a {
  overflow: hidden;
}

.navi-in .menu-header li a .caption-wrap {
  position: relative;
  z-index: 1;
}

.navi-in .menu-header li a .has-sub {
  z-index: 1;
}

#navi:not(.fixed) .navi-in .menu-header li:not(:first-child) a:before,
#navi:not(.fixed) .navi-in .menu-header li:not(:first-child) ul.sub-menu li a:before,
#navi:not(.fixed) .navi-in .menu-header li:not(:first-child) a:after,
#navi:not(.fixed) .navi-in .menu-header li:not(:first-child) ul.sub-menu li a:after {
  position: absolute;
  content: "";
  -webkit-transition: all .3s linear;
  transition: all .3s linear;
  background-color: rgba(238, 204, 216, 0.4);
  display: block;
  width: 80px;
  height: 80px;
  box-sizing: border-box;
}

#navi.fixed .navi-in .menu-header li:not(:first-child) a:before,
#navi.fixed .navi-in .menu-header li:not(:first-child) ul.sub-menu li a:before,
#navi.fixed .navi-in .menu-header li:not(:first-child) a:after,
#navi.fixed .navi-in .menu-header li:not(:first-child) ul.sub-menu li a:after {
  position: absolute;
  content: "";
  -webkit-transition: all .3s linear;
  transition: all .3s linear;
  background-color: rgba(255, 255, 255, 0);
  display: block;
  width: 80px;
  height: 80px;
  box-sizing: border-box;
}

.navi-in .menu-header li a:before,
.navi-in .menu-header li ul.sub-menu li a:before {
  top: 0;
  left: 0;
  transform: translate(-40px, 0%) scale(0.5);
}

.navi-in .menu-header li a:after,
.navi-in .menu-header li ul.sub-menu li a:after {
  bottom: 0;
  right: 0;
  transform: translate(40px, 0%) scale(0.5);
}

#navi:not(.fixed) .navi-in .menu-header li:hover>a:before,
#navi:not(.fixed) .navi-in .menu-header li ul.sub-menu>li:hover>a:before {
  transform: translate(-40px, -50%) rotate(-90deg) scale(1.0);
  border-radius: 50%;
  background-color: rgba(238, 204, 216, 1.0);
}

#navi:not(.fixed) .navi-in .menu-header li:hover>a:after,
#navi:not(.fixed) .navi-in .menu-header li ul.sub-menu>li:hover>a:after {
  transform: translate(40px, 50%) rotate(-90deg) scale(1.0);
  border-radius: 50%;
  background-color: rgba(238, 204, 216, 1.0);
}

#navi.fixed .navi-in .menu-header li:hover>a:before,
#navi.fixed .navi-in .menu-header li ul.sub-menu>li:hover>a:before {
  transform: translate(-40px, -50%) rotate(-90deg) scale(1.0);
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 1.0);
}

#navi.fixed .navi-in .menu-header li:hover>a:after,
#navi.fixed .navi-in .menu-header li ul.sub-menu>li:hover>a:after {
  transform: translate(40px, 50%) rotate(-90deg) scale(1.0);
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 1.0);
}

#navi:not(.fixed).navi .menu-header>.menu-item.current-menu-item>a:before,
#navi:not(.fixed).navi .menu-header>.menu-item.current-menu-ancestor>a:before,
#navi:not(.fixed).navi .menu-header>.menu-item>.current-menu-item>a:before,
#navi:not(.fixed) .navi-in .menu-header li ul.sub-menu li.current-menu-item>a:before,
#navi:not(.fixed) .navi-in .menu-header li ul.sub-menu li.current-menu-ancestor>a:before {
  transform: translate(-40px, -50%) rotate(-90deg) scale(1.0);
  border-radius: 50%;
  background-color: rgba(238, 204, 216, 1.0);
}

#navi:not(.fixed).navi .menu-header>.menu-item.current-menu-item>a:after,
#navi:not(.fixed).navi .menu-header>.menu-item.current-menu-ancestor>a:after,
#navi:not(.fixed).navi .menu-header>.menu-item>.current-menu-item>a:after,
#navi:not(.fixed) .navi-in .menu-header li ul.sub-menu li.current-menu-item>a:after,
#navi:not(.fixed) .navi-in .menu-header li ul.sub-menu li.current-menu-ancestor>a:after {
  transform: translate(40px, 50%) rotate(-90deg) scale(1.0);
  border-radius: 50%;
  background-color: rgba(238, 204, 216, 1.0);
}

#navi.fixed.navi .menu-header>.menu-item.current-menu-item>a:before,
#navi.fixed.navi .menu-header>.menu-item.current-menu-ancestor>a:before,
#navi.fixed.navi .menu-header>.menu-item>.current-menu-item>a:before,
#navi.fixed .navi-in .menu-header li ul.sub-menu li.current-menu-item>a:before,
#navi.fixed .navi-in .menu-header li ul.sub-menu li.current-menu-ancestor>a:before {
  transform: translate(-40px, -50%) rotate(-90deg) scale(1.0);
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 1.0);
}

#navi.fixed.navi .menu-header>.menu-item.current-menu-item>a:after,
#navi.fixed.navi .menu-header>.menu-item.current-menu-ancestor>a:after,
#navi.fixed.navi .menu-header>.menu-item>.current-menu-item>a:after,
#navi.fixed .navi-in .menu-header li ul.sub-menu li.current-menu-item>a:after,
#navi.fixed .navi-in .menu-header li ul.sub-menu li.current-menu-ancestor>a:after {
  transform: translate(40px, 50%) rotate(-90deg) scale(1.0);
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 1.0);
}

#navi:not(.fixed) .navi-in .menu-header li a:hover,
#navi:not(.fixed) .navi-in .menu-header li ul.sub-menu>li a:hover {
  background-color: rgba(204, 102, 139, 1.0);
  /*background-color: rgba(238,204,216,1.0);*/
}

#navi.fixed .navi-in .menu-header li:not(:first-child) a:hover,
#navi.fixed .navi-in .menu-header li:not(:first-child) ul.sub-menu>li a:hover {
  background-color: rgba(255, 255, 255, 0.8);
}

#navi.fixed .navi-in .menu-header li:first-child a:hover {
  background-color: rgba(170, 0, 62, 1.0);
}

#navi .navi-in .menu-header li a:hover {
  /*background-color: rgba(170,0,62,1.0);*/
}

#navi:not(.fixed) .navi-in .menu-header>li>a:hover div,
#navi:not(.fixed) .navi-in .menu-header li ul.sub-menu>li>a:hover div {
  color: #fff;
  font-weight: bold;
}

#navi.fixed .navi-in .menu-header li>a:hover div,
#navi.fixed .navi-in .menu-header li ul.sub-menu>li>a:hover div {
  color: var(--shiraz);
  font-weight: bold;
}

#navi:not(.fixed).navi .menu-header>.menu-item.current-menu-item,
#navi:not(.fixed).navi .menu-header>.menu-item.current-menu-ancestor,
#navi:not(.fixed).navi .menu-header>.menu-item>.current-menu-item,
#navi:not(.fixed) .navi-in .menu-header li ul.sub-menu li.current-menu-item,
#navi:not(.fixed) .navi-in .menu-header li ul.sub-menu li.current-menu-ancestor {
  background-color: rgba(204, 102, 139, 1.0);
}

#navi.fixed.navi .menu-header>.menu-item.current-menu-item:not(:first-child),
#navi.fixed.navi .menu-header>.menu-item.current-menu-ancestor:not(:first-child),
#navi.fixed.navi .menu-header>.menu-item:not(:first-child)>.current-menu-item,
#navi.fixed .navi-in .menu-header li:not(:first-child) ul.sub-menu li.current-menu-item,
#navi.fixed .navi-in .menu-header li:not(:first-child) ul.sub-menu li.current-menu-ancestor {
  background-color: rgba(255, 255, 255, 0.8);
}

#navi:not(.fixed).navi .menu-header>.menu-item.current-menu-item>a div,
#navi:not(.fixed).navi .menu-header>.menu-item.current-menu-ancestor>a div,
#navi:not(.fixed).navi .menu-header>.menu-item>.current-menu-item>a div,
#navi:not(.fixed) .navi-in .menu-header li ul.sub-menu li.current-menu-item>a div,
#navi:not(.fixed) .navi-in .menu-header li ul.sub-menu li.current-menu-ancestor>a div {
  /*color: var(--shiraz);*/
  color: #fff;
  font-weight: bold;
}

#navi.fixed.navi .menu-header>.menu-item.current-menu-item>a div,
#navi.fixed.navi .menu-header>.menu-item.current-menu-ancestor>a div,
#navi.fixed.navi .menu-header>.menu-item>.current-menu-item>a div,
#navi.fixed .navi-in .menu-header li ul.sub-menu li.current-menu-item>a div,
#navi.fixed .navi-in .menu-header li ul.sub-menu li.current-menu-ancestor>a div {
  color: var(--shiraz);
  font-weight: bold;
}

/*###### アピールエリア ######*/
#appeal {
  height: calc(100vw * 0.3);
  position: relative;
  overflow: hidden;
  border-bottom: solid 1px #fff;
  /*20241003追加*/
}

#appeal-in:after {
  content: "";
  width: 100%;
  height: 150px;
  background-image: url(img/appeal-after.png);
  background-size: 100% auto;
  background-position: center bottom;
  background-repeat: no-repeat;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
}

.appeal-content {
  background-color: transparent;
}

.appeal-content .appeal-title {
  font-weight: 500;
  line-height: 110%;
  text-shadow: -1px 1px 2px rgba(255, 255, 255, 1.0),
    1px 1px 2px rgba(255, 255, 255, 1.0),
    1px -1px 2px rgba(255, 255, 255, 1.0),
    -1px -1px 2px rgba(255, 255, 255, 1.0),
    -4px 0px 4px rgba(255, 255, 255, 0.7),
    0px 4px 4px rgba(255, 255, 255, 0.7),
    4px 0px 4px rgba(255, 255, 255, 0.7),
    0px -4px 4px rgba(255, 255, 255, 0.7);
  opacity: 0;
  animation: appealFalling 1.5s ease 0.5s alternate forwards;
}

/*###### サイドバー ######*/
.widget-sidebar .widget-title {
  background-color: transparent;
  font-weight: normal;
  display: flex;
  align-items: center;
}

.widget-sidebar .widget-title:before,
.widget-sidebar .widget-title:after {
  content: "";
  height: 1px;
  flex-grow: 1;
  background-color: var(--azalea);
}

.widget-sidebar .widget-title:before {
  margin-right: .5em;
}

.widget-sidebar .widget-title:after {
  margin-left: .5em;
}

/*###### ウィジェットモバイル ######*/
.widget_mobile_text {
  .widget-title {
    background-color: transparent;
    font-weight: normal;
    display: flex;
    align-items: center;
    font-size: 1.5rem;
    margin-bottom: 1rem;
  }

  .widget-title:before,
  .widget-title:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: var(--azalea);
  }

  .widget-title:before {
    margin-right: .5em;
  }

  .widget-title:after {
    margin-left: .5em;
  }
}

/*###### 関連記事 ######*/
.related-entry-heading {
  .main-caption {
    background-color: transparent;
    font-weight: normal;
    display: flex;
    align-items: center;
    font-size: 1.5rem;
    margin-bottom: 1rem;
  }

  .main-caption:before,
  .main-caption:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: var(--azalea);
  }

  .main-caption:before {
    margin-right: .5em;
  }

  .main-caption:after {
    margin-left: .5em;
  }
}

/*** ウィジェット ***/
/** アーカイブ **/
.widget_archive ul li:last-child,
.widget_archive ul li:nth-last-child(2) {
  display: none;
}

/*###### フッター ######*/
.footer-bottom-logo img {
  height: auto;
}

.navi-footer-in>.menu-footer li {
  /*border-left-color: rgba(170,0,62,0.1);*/
  border-left: none;
}

.navi-footer-in>.menu-footer li:last-child {
  /*border-right-color: rgba(170,0,62,0.1);*/
  border-right: none;
}

.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 rgba(170, 0, 62, 0.1);
      }
    }

    & li:last-child a {
      border-right: 1px solid rgba(170, 0, 62, 0.1);
    }
  }
}

/*###### 本文 ######*/
h1.entry-title {
  text-align: center;
  font-weight: normal;
  color: #371f28;
  font-size: 180%;
  /*position: relative;*/
}

h1.entry-title span {
  display: inline-block;
}

.entry-content h2:not(.flowing) {
  font-weight: normal;
  color: #371f28;
  background: none;
  padding-left: 0;
  padding-bottom: 0;
  border-bottom: 2px solid var(--shiraz);
  position: relative;
  font-size: 160%;
}

.entry-content h2.flowing {
  background: none;
  padding-left: 0;
  padding-bottom: 0;
}

.entry-content h2:not(.flowing):not(.dot-circle):before {
  content: "\f484";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: .5em;
  color: var(--shiraz);
}

.entry-content h2.dot-circle:before {
  content: "\f192";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: .5em;
  color: var(--hot-today);
}

.entry-content h2:not(.flowing):after {
  position: absolute;
  content: "";
  border-bottom: solid 5px var(--azalea);
  bottom: -5px;
  left: 0;
  width: 30%;
}

.entry-content h3,
.entry-content .h3 {
  font-weight: normal;
  color: #371f28;
  display: flex;
  align-items: center;
  justify-content: left;
  border: none;
  padding: 0;
  font-size: 130%;
  /*position: relative;*/
  border-left: 2px solid #cc668b;
  padding-left: .5em;
}

.entry-content h3:before,
.entry-content .h3:before {
  /*content: "";
position: absolute;
border-bottom: solid 5px var(--azalea);
bottom: -5px;
left: 0;
width: 10%;*/
}

.entry-content h3:after,
.entry-content .h3:after {
  /*position: absolute;*/
  content: "";
  height: 1px;
  flex-grow: 1;
  background-color: var(--azalea);
  /*border-bottom: solid 5px var(--azalea);
bottom: -5px;
left: 0;
width: 30%;*/
}

.entry-content h4 {
  font-weight: normal;
  color: #371f28;
  display: flex;
  align-items: center;
  justify-content: left;
  border-top: 1px solid var(--azalea);
  border-bottom: 1px solid var(--azalea);
}

.entry-content .line-container h4 {
  margin-top: 0;
  margin-bottom: 0;
  border-top: 1px solid #06c755;
  border-bottom: 1px solid #06c755;
}

.flex-container.line h4 {
  margin-top: 1em;
  margin-bottom: 1em;
  margin: 1em;
  border-top: 1px solid #06c755;
  border-bottom: 1px solid #06c755;
  width: 100%;
}

.entry-content h5 {
  font-weight: normal;
  color: #371f28;
  border: none;
  border-left: 2px solid var(--azalea);
  padding: 0;
  padding-left: .5em;
}

.clearfix.large-photo>img,
.clearfix.large-photo>p img,
.clearfix.large-photo>figure,
.clearfix.large-photo>.wp-block-image.maxwidth-50

/*,
.clearfix.large-photo > .wp-block-image*/
  {
  max-width: 50%;
  height: auto;
}

.clearfix.large-photo>img.maxwidth-40,
.clearfix.large-photo>p img.maxwidth-40,
.clearfix.large-photo>figure.maxwidth-40 {
  max-width: 40% !important;
  height: auto;
}

/*### ダウンロードボタン ###*/
.clearfix.download>img,
.clearfix.download>p img,
.clearfix.download>figure {
  max-width: 150px;
  height: auto;
}

/*### まとめ ###*/
ul.matome {
  list-style: none;
  padding-left: 0;
}

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

ul.matome>li a .anchor-icon {
  text-indent: 0;
  padding-left: 0;
}

ul.matome>li:before {
  content: "\f118";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: .5em;
  color: var(--azalea);
}

/*###### トップページ ######*/
.home .large-photo img {
  /*width: 50%;
height: auto;*/
}

/*** flex box ***/
.home.page .flex-container.pict .flex-item {
  width: 20%;
  padding-left: 2%;
  padding-right: 2%;
}

.home.page .flex-container.pict .flex-item .item-title {
  display: inline-block;
  line-height: 110%;
  font-size: 80%;
}

.home.page .flex-container.pict .flex-item .item-title span {
  display: inline-block;
}

.home.page .flex-container.menu {
  justify-content: space-around;
}

.home.page .flex-container.menu>.flex-item {
  width: 31.333333%;
  margin-left: 1%;
  margin-right: 1%;
  margin-bottom: 1em;
  justify-content: space-around;
  border: 4px solid var(--azalea);
  border-radius: 20px;
  padding: 0;
  transition: all .5s;
  overflow: hidden;
}

.home.page .flex-container.menu>.flex-item.line {
  border-color: #06c755;
}

.home.page .flex-container.menu .flex-item p {
  /*margin: 0;*/
  margin-bottom: 0;
}

.home.page .flex-container.menu>.flex-item a .item-title {
  color: #77002b;
  /*color: #fff;*/
  text-shadow: -1px 1px 4px var(--azalea),
    1px 1px 4px var(--azalea),
    1px -1px 4px var(--azalea),
    -1px -1px 4px var(--azalea),
    -4px 0px 6px rgba(238, 204, 216, 0.7),
    0px 4px 6px rgba(238, 204, 216, 0.7),
    4px 0px 6px rgba(238, 204, 216, 0.7),
    0px -4px 6px rgba(238, 204, 216, 0.7);
  display: block;
}

.home.page .flex-container.menu>.flex-item a:hover .item-title {
  /*color: initial;*/
  color: #77002b;
  text-shadow: -1px 1px 4px rgba(255, 255, 255, 1.0),
    1px 1px 4px rgba(255, 255, 255, 1.0),
    1px -1px 4px rgba(255, 255, 255, 1.0),
    -1px -1px 4px rgba(255, 255, 255, 1.0),
    -4px 0px 6px rgba(255, 255, 255, 0.7),
    0px 4px 6px rgba(255, 255, 255, 0.7),
    4px 0px 6px rgba(255, 255, 255, 0.7),
    0px -4px 6px rgba(255, 255, 255, 0.7);
}

.home.page .flex-container.menu>.flex-item>a,
.home.page .flex-container.menu>.flex-item.no-anchor {
  padding: 1em;
  position: relative;
}

.home.page {
  .flex-container.menu>.flex-item>a img {
    width: 50%;
    display: block;
    margin: auto;
    margin-top: 1em;
    margin-bottom: 1em;
    transition: all .5s;
  }

  .flex-container.menu>.flex-item.line>p>img {
    width: 50%;
    display: block;
    margin: auto;
    margin-top: 1em;
    margin-bottom: 1em;
    transition: all .5s;
  }
}

.home.page .flex-container.menu>.flex-item.supplement>a img {
  width: 90%;
}

.home.page .flex-container.menu>.flex-item:not(.no-anchor):hover {
  background-color: var(--azalea);
  border: 4px solid var(--shiraz);
}

.home.page .flex-container.menu>.flex-item:not(.no-anchor):hover>a img {
  transform: scale(1.1);
  opacity: 0.7;
}

.home.page .flex-container.line .flex-item>a img {
  transition: all .5s;
}

.home.page .flex-container.line .flex-item>a:hover img {
  opacity: 0.7;
}

.home.page .flex-container.menu .flex-item>span {
  display: inline-block;
}

.home.page .flex-container.menu .flex-item>h4 {
  display: inline-block;
  /*margin: 1em 1em .5em 1em;*/
  margin: 0;
}

.home.page .flex-container.menu .flex-item .item-title {
  font-size: 120%;
  font-weight: 500;
  border-top: 1px solid var(--azalea);
  border-bottom: 1px solid var(--azalea);
  line-height: 130%;
  padding: 6px 0;
}

.home.page .flex-container.menu .flex-item.line .item-title {
  border-color: #06c755;
}

.home.page .flex-container.menu .flex-item .item-description {
  text-align: left;
  color: initial;
}

.home.page .flex-container.menu .flex-container.line {
  /*margin-top: 1em;*/
  margin-top: .5em;
  margin-bottom: .5em;
}

.home.page .flex-container.menu .flex-item dl {
  margin: 0;
}

.home.page .flex-container.menu .flex-item dd {
  text-align: left;
}

.home.page .flex-container.menu .flex-item a .anchor-icon {
  display: none;
}

.home.page .flex-container.menu>.flex-item>a:before {
  content: "\f00e";
  font-family: "Font awesome 5 Free";
  font-weight: 900;
  font-size: 400%;
  color: #fff;
  width: 50%;
  height: 50%;
  position: absolute;
  top: .5em;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  opacity: 0;
  transition: all .5s;
  z-index: 1;
}

.home.page .flex-container.menu>.flex-item a:hover:before {
  opacity: 1;
}

.home.page .column-wrap>div {
  padding: .5em;
}

/*###### 処方せん ######*/
.prescription.page .flex-container.merit .flex-item p,
.prescription.page .flex-container.flow .flex-item p {
  margin: 0;
}

.prescription.page .flex-container.merit .flex-item img,
.prescription.page .flex-container.flow>.flex-item>p>img {
  width: 50%;
}

.prescription.page .flex-container.merit .flex-item {
  width: 31.333333%;
  margin-left: 1%;
  margin-right: 1%;
  margin-bottom: 1em;
  padding: 1em;
  justify-content: space-around;
  border: 2px solid var(--azalea);
  border-radius: 20px;
}

.prescription.page .flex-container.merit .flex-item dl {
  margin: 0;
}

.prescription.page .flex-container.merit .flex-item dd {
  text-align: left;
}

.prescription.page .flex-container.flow>.flex-item {
  width: 31.333333%;
  margin-left: 1%;
  margin-right: 1%;
  padding: 1em;
  justify-content: space-around;
  position: relative;
  border: 2px solid var(--azalea);
  border-radius: 20px;
}

/*.prescription.page .flex-container.flow > .flex-item:not(:last-child)*/
.prescription.page .flex-container.flow>.flex-item {
  margin-bottom: 1.2em;
}

.prescription.page .flex-container.flow>.flex-item:not(:last-child):after {
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  width: 3rem;
  height: 3rem;
  font-size: 3rem;
  transform: translate(2.4rem, -1rem);
  color: var(--shiraz);
  z-index: 1;
}

.prescription.page .flex-container.flow .flex-item dl {
  margin: 0;
}

.prescription.page .flex-container.flow .flex-item dl>dt {
  margin-bottom: .5em;
}

.prescription.page .flex-container.flow .flex-item dd {
  text-align: left;
}

.prescription.page .flex-container.flow .flex-item dd:not(:last-child) {
  /*margin-bottom: 1.0em;*/
}

.prescription.page .flex-container.flow .flex-item dd:last-child {
  margin-bottom: 1.0em;
}

/*** あんしんカード ***/
.column-wrap.anshin-card dl dt {
  margin-bottom: 1em;
}

.column-wrap.anshin-card dl dd {
  margin-left: 0;
}

img.anshin-card {
  border: 1px solid var(--azalea);
  box-sizing: border-box;
}

/*###### 零売 ######*/
.reibai.page .flex-container.merit .flex-item p,
.reibai.page .flex-container.flow .flex-item p {
  margin: 0;
}

.reibai.page .flex-container.merit .flex-item img,
.reibai.page .flex-container.flow>.flex-item>p img {
  width: 50%;
}

.reibai.page .flex-container.merit .flex-item {
  width: 31.333333%;
  margin-left: 1%;
  margin-right: 1%;
  margin-bottom: 1em;
  padding: 1em;
  justify-content: space-around;
  border: 2px solid var(--azalea);
  border-radius: 20px;
}

.reibai.page .flex-container.merit .flex-item dl {
  margin: 0;
}

.reibai.page .flex-container.merit .flex-item dd {
  text-align: left;
}

.reibai.page .flex-container.flow>.flex-item {
  width: 31.333333%;
  margin-left: 1%;
  margin-right: 1%;
  padding: 1em;
  justify-content: space-around;
  position: relative;
  border: 2px solid var(--azalea);
  border-radius: 20px;
}

/*.reibai.page .flex-container.flow > .flex-item:not(:last-child)*/
.reibai.page .flex-container.flow>.flex-item {
  margin-bottom: 1.2em;
}

.reibai.page .flex-container.flow>.flex-item:not(:last-child):after {
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  width: 3rem;
  height: 3rem;
  font-size: 3rem;
  transform: translate(2.4rem, -1rem);
  color: var(--shiraz);
  z-index: 1;
}

.reibai.page .flex-container.flow .flex-item dl {
  margin: 0;
}

.reibai.page .flex-container.flow .flex-item dd {
  text-align: left;
}

.reibai.page .flex-container.flow .flex-item dd:not(:last-child) {
  margin-bottom: 1.0em;
}

/*###### 漢方相談 ######*/
.kanpou dl.review dd {
  margin-left: 0;
}

.kanpou dl.review ul {
  list-style: none;
  padding-left: 0;
}

.kanpou dl.review ul>li {
  text-indent: -1.5em;
  padding-left: 1.5em;
}

.kanpou dl.review ul>li:before {
  content: "\f118";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: .5em;
  color: var(--azalea);
}

.kanpou dl.example {
  display: flex;
  flex-wrap: wrap;
  gap: 1em;

  & dt,
  & dd {
    flex: 0 1 auto;
    margin-left: 0;
    line-height: 120%;
  }

  & dd {
    /*width: auto;
 height: auto;
 margin: .1em .2em .1em 0;*/
    /*padding: .3em 1em;*/
    box-sizing: border-box;
    background: var(--azalea);
    font-weight: 500;
    /*text-align: left;*/
  }
}

.kanpou dl.symptom dd {
  margin-left: 0;
}

/*###### コロナ後遺症 ######*/
.long-covid {
  .dl-single-line {
    & dt {
      width: 9em;
    }

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

.request-wrap.covid {
  margin-top: 30px;

  & a.page-link-btn {
    border-radius: 40px;
  }

  & a.page-link-btn.contact {
    /*color: #fff;
 background-color: var(--shiraz);*/
  }

  & a.page-link-btn.contact:hover {
    /*background: var(--azalea);
 color: var(--shiraz);*/
  }
}

/*###### 病気の症状と原因 ######*/
.disease dl.check dd {
  margin-left: 0;
}

.disease dl.check dd {
  margin-bottom: 1.5em;
}

.disease dl.check>dt {
  font-weight: normal;
  color: #371f28;
  display: flex;
  align-items: center;
  justify-content: left;
  border: none;
  padding: 0;
  font-size: 130%;
  text-indent: 0;
  padding-left: 0;
}

.disease dl.check>dt:after {
  content: "";
  height: 1px;
  flex-grow: 1;
  background-color: #ccbb66;
}

/*###### 会社概要 ######*/
.company .entry-content .fa,
.company .entry-content .fas {
  margin-right: 0.5em;
}

.company dl dd span {
  display: inline-block;
  margin-right: .5em;
}

.company .free-dial-mark {
  /*width: 2em;
height: auto;
margin-right: 0.5em;*/
}

.company dl:not(.dl-single-line):not(.dl-inline-block-dd)>dd {
  margin-left: 0;
}

.company dl.dl-inline-block-dd>dd {
  margin-left: 0;
  margin-right: 1em;
  margin-bottom: .5em;
}

.company dl.dl-inline-block-dd>dd:not(:last-child) {
  margin-bottom: 0;
}

.company dl:not(.dl-single-line):not(.dl-inline-block-dd)>dt:not(:first-child) {
  margin-top: 1.5em;
}

.company .dl-single-line>dt {
  width: 5em;
  text-align: right;
}

.company .dl-single-line>dd {
  margin-left: 5.5em;
}

/*** flex box ***/
.column-wrap.store .column-left {
  /*position: relative;*/
}

.column-wrap.store .column-right {
  /*position: relative;*/
}

.column-wrap.store>div {
  /*padding-bottom: 0;*/
}

.column-wrap.store .flex-container.store {
  align-items: flex-start;
  justify-content: space-between;
}

.column-wrap.store .flex-container.store .flex-item {
  /*display: flex;
align-items: center;
justify-content: center;*/
  width: 50%;
  border: 1px solid #fff;
  /*margin-bottom: 1%;*/
  overflow: hidden;
  aspect-ratio: 4 / 3;
  /*transition: all .5s;*/
}

.column-wrap.store .column-left:before,
.column-wrap.store .column-right:before {
  /*content: "";
display: block;
padding-top: 75%;*/
}

.column-wrap.store .column-left img,
.column-wrap.store .column-right .flex-container.store {
  /*position: absolute;
top: 0;
left: 0;
bottom: 0;
right: 0;*/
}

.column-wrap.store .flex-container.store .flex-item:nth-of-type(2n) {
  /*margin-left: 1%;*/
}

.column-wrap.store .flex-container.store .flex-item a,
.column-wrap.store .flex-container.store .flex-item img {
  display: block;
  transition: all .5s;
}

.company.page .flex-container.store .flex-item img {
  transition: all .5s;
}

.company.page .flex-container.store .flex-item:hover img {
  transform: scale(1.1);
}

/*###### あいさつ ######*/
.concept dl:not(.dl-single-line):not(.dl-inline-block-dd)>dd {
  margin-left: 0;
}

.concept dl:not(.dl-single-line):not(.dl-inline-block-dd)>dt:not(:first-child) {
  margin-top: 1.5em;
}

/*###### 栄養療法 ######*/
/*### 温冷比 ###*/
.foods .flex-container {
  justify-content: space-around;
}

.foods .flex-container .flex-item {
  width: auto;
  /*height: 40px;*/
  height: auto;
  /*margin: .2em 1em .2em 0;
padding: .3em 1em;
border-radius: 20px;*/
  box-sizing: border-box;
  position: relative;
  /*background: var(--azalea);*/
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 500;
  margin-bottom: 1em;
}

.foods .flex-container .flex-item span {
  width: auto;
  height: 40px;
  margin: .2em 1em .2em -1em;
  padding: .3em 1.1em;
  border-radius: 20px;
  z-index: -1;
}

.foods.warm .flex-container .flex-item span {
  background: var(--azalea);
}

.foods.cool .flex-container .flex-item span {
  background: #e6f3f7;
}

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

dl.foods>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.foods.warm>dt:before {
  content: "温";
  color: var(--shiraz);
  background-color: var(--azalea);
}

dl.foods.cool>dt:before {
  content: "冷";
  color: #0082aa;
  background-color: #e6f3f7;
}

dl.foods>dd {
  margin-left: 0;
}

dl.foods>dd dd {
  margin-left: 0;
}

/*### 食事の順序 ###*/
.flex-container.order {
  justify-content: flex-start;
  margin-bottom: 40px;
}

.flex-container.order .flex-item {
  width: auto;
  height: auto;
  margin: 0 1em .2em 0;
  padding: .3em 1em;
  border-radius: 30px;
  box-sizing: border-box;
  position: relative;
  background: var(--azalea);
  display: flex;
  justify-content: flex-start;
  align-items: center;
  font-weight: 500;
}

.flex-container.order .flex-item dl {
  margin-bottom: 0;
  text-align: left;
}

.flex-container.order .flex-item dl dt {
  /*text-align: left;*/
}

.flex-container.order .flex-item dl dd {
  font-size: 90%;
}

.flex-container.order .flex-item:not(:last-child):after {
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 0;
  bottom: 0;
  right: -.7em;
  margin: auto;
  display: flex;
  align-items: center;
  color: var(--shiraz);
}

.flex-container.order .flex-item:first-child {
  margin-left: 0;
}

.flex-container.order .flex-item:last-child {
  margin-right: 0;
}

.flex-container.order.last {
  margin-bottom: 1em;
}

/*### 季節の食べ物 ###*/
.seasonalfoods .flex-container {
  justify-content: space-around;
}

.seasonalfoods .flex-container .flex-item {
  width: auto;
  /*height: 40px;*/
  height: auto;
  /*margin: .2em 1em .2em 0;
padding: .3em 1em;
border-radius: 20px;*/
  box-sizing: border-box;
  position: relative;
  /*background: var(--azalea);*/
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 500;
  margin-bottom: 1em;
}

.seasonalfoods .flex-container .flex-item span {
  width: auto;
  height: 40px;
  margin: .2em 1em .2em -1em;
  padding: .3em 1.1em;
  border-radius: 20px;
  background: var(--azalea);
  z-index: -1;
}

dl.seasonalfoods>dt {
  margin-bottom: .5em;
}

dl.seasonalfoods>dd {
  margin-left: 0;
}

dl.seasonalfoods>dd dd {
  margin-left: 0;
}

/*###### LINE友だち募集 ######*/
.flex-container.line .flex-item {
  /*width: 50%;*/
  width: auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.flex-container.line .flex-item a {}

.flex-container.line .flex-item img {
  display: block;
}

/*###### 問い合せフォーム ######*/
dl#Inquiry dt {
  clear: left;
  float: left;
  width: 11em;
  text-align: right;
  font-weight: bold;
}

dl#Inquiry.vi dt {
  width: 13em;
}

dl#Inquiry dd {
  margin-left: 11.5em;
  margin-bottom: 20px;
}

dl#Inquiry.vi dd {
  margin-left: 13.5em;
}

dl.inquiry dt {
  /*clear: left;
float: left;
width: 11em;
text-align: right;
font-weight: bold;*/
}

dl.inquiry dd {
  /*margin-left: 11.5em;
margin-bottom: 20px;*/
}

/*** LINE友だち登録 ***/
.contact {
  .your-how-to-contact-child-line dd {

    /*display: grid;
 grid-template-columns: repeat(auto-fit, minmax(272px, 1fr));
 gap: .25em;
 justify-content: space-around;
 align-items: center;*/
    .column-wrap>div {
      padding: 0;
      margin: 0;
      margin-top: .5em;
    }

    & a {
      display: inline-block;

      /*margin-right: 1em;*/
      & img {
        display: block;
      }
    }
  }

  .ticket-number {
    display: inline-block;

    & input[type="text"] {
      width: 10em;
    }

    & span:not([data-name="ticket-number"]) {
      display: inline-block;
    }

    .copy-success {
      font-size: 80%;
      background-color: var(--azalea);
      border-radius: 1.5em;
      padding: .2em .5em;
      color: #371f28;
      margin-left: .5em;
    }
  }

}

/*** 問診票フォーム ***/
.contact {
  .hide {
    display: none;
  }

  .auto-filled {
    color: #888;
    /*2025Update*/
  }
}

.contact dl.inquiry.dl-single-line>dt {
  width: 9em;
  /*text-align: right;*/
}

.contact dl.inquiry.dl-single-line>dd {
  margin-left: 9.5em;
}

.contact dl.inquiry.dl-single-line>dd.has-parent {
  margin-left: 1em;

  & dt {
    width: 11em;
    /*font-weight: normal;*/
  }

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

.contact dl.inquiry>dd.has-parent {
  margin-left: 1em;

  .dl-single-line dt {
    width: 11em;
    /*font-weight: normal;*/
  }

  .dl-single-line dd {
    margin-left: 11.5em;
  }
}

.contact dl.inquiry {

  & input[type="number"],
  & input[type="date"] {
    width: 10em;
  }

  & span.unit {
    margin-left: .5em;
  }

  & dt>span {
    /*margin-left: .5em;*/
    font-weight: normal;
    font-size: 90%;
  }

  & dt ul.komelist {
    font-weight: normal;
    line-height: 130%;
    font-size: 90%;
  }
}

.contact .monshin dl.inquiry>dd.has-parent {
  margin-left: 2em;
}

dl.inquiry {
  & dd {
    /*margin-left: 11.5em;*/
    margin-bottom: 20px;
  }

  & dl.has-parent>dt {
    font-weight: normal;
  }
}

/*** 商品問合せフォーム（清心元） ***/
.item-inquiry,
/* テストフォーム */
.product-inquiry,
.contact-vi {
  .hide {
    display: none;
  }

  & select[name="your-quantity"] {
    display: inline-block;
    width: 5em;
    /*margin-left: .5em;*/
    margin-right: .5em;
  }

  & select[name="your-quantity"]:focus {
    outline-color: var(--azalea);
  }
}

/*** ベトナムフォーム↓ ***/
.contact-vi dl.inquiry.dl-single-line>dt {
  width: 10em;
  /*text-align: right;*/
}

.contact-vi dl.inquiry.dl-single-line>dd {
  margin-left: 10.5em;
}

.contact-vi dl.inquiry.dl-single-line>dd.has-parent:not(.your-quantity) {
  margin-left: 1em;

  & dt {
    width: 12.5em;
  }

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

.contact-vi dl.inquiry>dd.has-parent:not(.your-quantity) {
  margin-left: 1em;

  .dl-single-line dt {
    width: 12.5em;
    /*font-weight: normal;*/
  }

  .dl-single-line dd {
    margin-left: 13em;
  }
}

.contact-vi dl.inquiry {

  & input[type="number"],
  & input[type="date"] {
    width: 10em;
  }

  & span.unit {
    margin-left: .5em;
  }

  & dt>span {
    /*margin-left: .5em;*/
    font-weight: normal;
    font-size: 90%;
  }

  & dt ul.komelist {
    font-weight: normal;
    line-height: 130%;
    font-size: 90%;
  }
}

/*** ベトナムフォーム↑ ***/

dl#Inquiry dd.before-interpretation,
dl.inquiry dd.before-interpretation {
  text-align: right;
}

p.submit,
p.send_button {
  width: 10em;
  margin-left: auto;
  margin-right: auto;
}

p.submit input[type="submit"].wpcf7-submit,
p.send_button input[type="submit"].wpcf7-submit {
  border-radius: 40px;
  border: none;
  font-weight: bold;
  font-size: 100%;
  background: #00aa11;
  box-shadow: 0 3px 1px #00660a;
  color: #fff;
  transition: 0.3s;
  padding: 1em;
}

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

p.submit input[type="submit"].wpcf7-submit:hover,
p.send_button input[type="submit"].wpcf7-submit:hover {
  /*background: rgba(74,186,0,0.7);*/
  background: #4dc458;
  box-shadow: 0 -3px 1px #00660a;
  transform: translateY(3px);
}

p.submit input[type="submit"].wpcf7-submit:focus,
p.send_button input[type="submit"].wpcf7-submit:focus {
  outline: 0;
  background: #00aa11;
}

dl#Inquiry b,
dl.inquiry b {
  color: red;
}

dl#Inquiry input:focus,
dl#Inquiry textarea:focus,
dl.inquiry input:focus,
dl.inquiry textarea:focus {
  /*border: 1px solid #005bab;
outline: 0;*/
  outline-color: var(--azalea);
}

.tel-num.big.center {
  text-align: center;
  font-size: 200%;
  font-weight: bold;
  color: #4aba00;
}

.contact,
.contact-vi {
  .tel-num span {
    display: inline-block;
  }
}

.contact,
.contact-vi {
  .tel-num i.fa {
    margin-right: .5em;
  }
}

.contact,
.contact-vi {
  & p>span {
    display: inline-block;
  }
}

.contact,
.contact-vi {
  & p>span:not(:last-child) {
    margin-right: .5em;
  }
}

/*** 求人フォーム ***/
.entry {

  /* ファイル選択ボタン */
  & input[type='file'] {
    color: rgb(31, 41, 55);
    cursor: pointer;
    border: 1px solid rgb(191, 194, 199);
    border-radius: 0.375rem;
    padding-right: 0.5rem;
    width: 100%;
    max-width: 24rem;
  }

  ::file-selector-button,
  ::-webkit-file-upload-button {
    background-color: rgb(209, 213, 219);
    color: rgb(31, 41, 55);
    border: none;
    cursor: pointer;
    border-right: 1px solid rgb(191, 194, 199);
    padding: 0.25rem 1rem;
    margin-right: 1rem;
  }
}

.entry {
  & dl.inquiry.dl-single-line>dt {
    width: 14em;
  }

  & dl.inquiry.dl-single-line>dd {
    margin-left: 14.5em;

    & span.supplement {
      display: inline-block;
      font-size: 80%;
    }
  }

  & dl.inquiry.dl-single-line>dd.has-parent {
    margin-left: 1em;

    & dt {
      width: 13em;
    }

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

  & dl.inquiry>dd.has-parent {
    margin-left: 1em;

    .dl-single-line dt {
      width: 13em;
    }

    .dl-single-line dd {
      margin-left: 13.5em;
    }
  }

  & dl.inquiry {

    & input[type="number"],
    & input[type="date"] {
      width: 10em;
    }

    & dt>span {
      font-weight: normal;
      font-size: 90%;
    }

    & dt ul.komelist {
      font-weight: normal;
      line-height: 130%;
      font-size: 90%;
    }
  }
}

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

.page.supplement,
.page.product-list {
  .grid-container.catbox {
    /*grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
 gap: 20px;*/
  }
}

.grid-container.catbox .grid-item {
  display: flex;
  flex-direction: column;
  /*align-items: center;*/
  margin-bottom: 20px;
}

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

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

.gr-item-content .itemcaption dl {
  /*margin-left: 160px;*/
  position: relative;
  font-size: 80%;
  /*background-color: #2ca2d4;*/
  background-color: #fff;
  padding: .5em;
  border-radius: 10px;
}

.gr-item-content .itemcaption dl dt {
  font-weight: bold;
  width: 6em;
  /*text-align: right;
position: absolute;*/
  float: left;
  clear: left;
  border-right: 2px solid #f2f9fc;
}

.gr-item-content .itemcaption dl dd {
  margin-left: 6em;
  /*background-color: #cae8f4;*/
  padding-left: .5em;
}

.gr-item-content .itemcaption ul,
.gr-item-content .itemcaption p {
  /*margin-left: 160px;*/
  font-size: 90%;
  line-height: 130%;
}

/* テスト ここまで */

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

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

input[type="submit"].skubutton:focus {
  outline: 0;
  background: #ff8000;
  /*background: #eb3b00;
box-shadow: 0 -3px 1px #ccc;
transform: translateY(3px);*/
  box-shadow: 0 -3px 1px #cc6600;
}

.page.supplement,
.page.product-list {
  .goto-itempage {
    display: block;
    text-align: right;
  }
}

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

.supplement,
.product-list {
  .how-to-buy {
    margin: auto;
    text-align: center;

    .fa,
    .fas {
      margin-right: 0.5em;
    }

    & span {
      display: inline-block;
      font-size: 150%;
    }
  }

  .how-to-buy.tel span:first-child {
    margin-right: 1em;
  }
}

.supplement .how-to-buy .fa,
.supplement .how-to-buy .fas {
  /*margin-right: 0.5em;*/
}

.supplement .how-to-buy span {
  /*display: inline-block;*/
}

.supplement .how-to-buy span {
  /*font-size: 150%;*/
}

.supplement .how-to-buy.tel span:first-child {
  /*margin-right: 1em;*/
}

/* テスト ここから */
.page.supplement-test .goto-itempage {
  display: block;
  text-align: right;
}

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

.supplement-test .how-to-buy {
  margin: auto;
  text-align: center;
}

.supplement-test .how-to-buy .fa,
.supplement-test .how-to-buy .fas {
  margin-right: 0.5em;
}

.supplement-test .how-to-buy span {
  display: inline-block;
}

.supplement-test .how-to-buy span {
  font-size: 150%;
}

.supplement-test .how-to-buy.tel span:first-child {
  margin-right: 1em;
}

/* テスト ここまで */

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

#img-box {
  /*テンプレート変更20231209*/
  /*  flex: 0 0 auto;*/
  /* Do not grow or shrink, maintain the initial size */
  display: flex;
  gap: 20px;
  /*align-items: center;*/
  justify-content: center;
}

.detail-box {
  /*テンプレート変更20231209*/
  /*  flex: 1;*/
  /* Allow to grow and take remaining space */
}

.single.item .header {
  /*height: 100px;*/
}

.single.item .widget-below-single-content-title .catch {
  text-align: center;
  line-height: 150%;
}

.single.item .widget-below-single-content-title .catch p {
  line-height: 150%;
}

.single.item .widget-below-single-content-title .catch>span,
.single.item .widget-below-single-content-title .catch p>span {
  display: inline-block;
}

.single.item .widget-below-single-content-title .catch .bold {
  font-size: 150%;
}

.single.item .widget-below-single-content-title .catch .title {
  display: inline-block;
  border-top: 1px solid var(--azalea);
  border-bottom: 1px solid var(--azalea);
  margin: auto;
  margin-bottom: 1em;
  padding: .3em .5em;
}

.single.item #itempage form dl {
  /*margin-left: 234px;*/
  /*テンプレート変更20231209*/
  position: relative;
}

.single.item #itempage form dl dt,
.single.item #itempage .item-description dl dt {
  /*テンプレート変更20231209*/
  /*font-weight: bold;*/
  float: left;
  clear: left;
  width: 4em;
  /*text-align: right;*/
  position: absolute;
}

.single.item #itempage form dl dd,
.single.item #itempage .item-description dl dd {
  /*テンプレート変更20231209*/
  margin-left: 4.5em;
}

.single.item .item-caption.safety dl dt {
  float: left;
  clear: left;
  /*width: 17em;*/
  /*text-align: right;*/
  /*position: absolute;*/
}

.single.item .item-caption.safety dl dd {
  /*margin-left: 17.5em;*/
}

.single.item .item-caption ul:not(.worry) {
  margin-left: 240px;
}

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

#itempage .itemimg {
  /*width: 300px;*/
  /*max-width: 240px;*/
  text-align: center;
  float: left;
  margin-right: 10px;
}

.entry-content #itempage .itemimg+h3,
.entry-content #itempage h3.item-name {
  /*テンプレート変更20231209*/
  background-color: var(--azalea);
  border: none;
  color: var(--shiraz);
  font-weight: bold;
  /*padding-top: .3em;
padding-bottom: .2em;
padding-left: 1em;*/
  padding: .4em 1em .3em 1em;
  border-radius: 20px;
}

#itempage .item-caption h3 {
  font-weight: normal;
  color: #371f28;
  display: flex;
  align-items: center;
  justify-content: left;
  border: none;
  padding: 0;
  font-size: 130%;
  background-color: transparent;
}

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

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

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

#itempage .exp .field .field_price {
  color: #e5764f;
  font-size: 1.42857em;
}

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

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

.exp .field_cprice {
  /*テンプレート変更20231209*/
  color: #999;
  font-size: .6em;
  font-weight: normal;
  text-decoration: line-through;
}

.exp .field_price em,
.exp .field_price span.item-unit {
  /*テンプレート変更20231209*/
  font-size: .5em;
}

#itempage .itemsubimg {
  /*テンプレート変更20231209*/
  display: flex;
  flex-direction: column;
}

#itempage .itemsubimg a {
  /*テンプレート変更20231209*/
  position: relative;
  scroll-snap-align: center;
}

#itempage .itemsubimg a img {
  /*テンプレート変更20231209*/
  object-fit: contain;
  position: abusolute;
  width: 100%;
  height: 100%;
}

/*.single.item */
.widget_text h3 {
  font-weight: normal;
  color: #371f28;
  display: flex;
  align-items: center;
  justify-content: left;
  border: none;
  padding: 0;
  font-size: 130%;
  background-color: transparent;
}

/*.single.item */
.widget_text h3:not(.faq-title):before {
  content: "\f00c";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: .5em;
  color: var(--azalea);
}

/*.single.item */
.widget_text h4 {
  font-weight: normal;
  color: #371f28;
  display: flex;
  align-items: center;
  justify-content: left;
  border-top: 1px solid var(--azalea);
  border-bottom: 1px solid var(--azalea);
  background-color: transparent;
}

.widget_text h5 {
  font-weight: normal;
  color: #371f28;
  border: none;
  border-left: 2px solid var(--azalea);
  padding: 0;
  padding-left: .5em;
}

.single.item .widget_text .flex-container.worry {
  margin-bottom: 20px;
}

/* ポイント表示 */
/*テンプレート変更20231209*/
.supplement .storycontent,
#itempage {

  .item-caption,
  .item-description {
    .fab {
      color: #0082aa;
      margin-right: .1em;
    }
  }
}

.supplement .storycontent,
#itempage {

  .item-caption,
  .item-description {
    .usces-item-get-point {
      font-weight: bold;
    }
  }
}

.supplement .storycontent,
#itempage {

  .item-caption,
  .item-description {
    .usces-item-point-rate {
      margin-left: 1em;
      padding: .2em 1em;
      border-radius: 20px;
      border: 1px solid var(--azalea);
      display: inline-block;
      font-size: 80%;
      color: var(--shiraz);
      font-weight: bold;
    }
  }
}

/* テスト ここから */
.supplement,
.product-list {
  .gr-item-content {

    .item-caption,
    .item-description,
    .status-wrap {
      .fab {
        color: #0082aa;
        margin-right: .1em;
      }
    }

    .status-wrap p {
      margin-top: 0;
      margin-bottom: 0;
    }
  }
}

.supplement .gr-item-content {

  .item-caption,
  .item-description,
  .status-wrap {

    .usces-item-get-point,
    .price {
      font-weight: bold;
    }
  }
}

.supplement .gr-item-content {

  .item-caption,
  .item-description,
  .status-wrap {
    .usces-item-point-rate {
      margin-left: 1em;
      padding: .2em 1em;
      border-radius: 20px;
      border: 1px solid var(--azalea);
      display: inline-block;
      font-size: 80%;
      color: var(--shiraz);
      font-weight: bold;
    }
  }
}

/* テスト ここまで */
/** 関連商品 **/
.assistance_item {

  /*display: none;*/
  & 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;
        /*flex-wrap: nowrap;*/
        /*justify-content: flex-start;*/
        gap: .25em;

        .slit {
          /*width: 100%;*/
          width: 100px;
          min-width: 80px;

          /*max-width: 100px;*/
          /*flex-grow: 1;*/
          & img {
            display: block;
            width: 100%;
          }
        }

        .detail {
          width: auto;

          /*min-width: 8em;
    flex-grow: 2;*/
          .assist_excerpt {
            & a {
              text-decoration: none;

              & h4 {
                /*text-decoration: none !important;*/
                margin-top: 0;
                margin-bottom: 0;
              }
            }

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

          .assist_price {}
        }
      }
    }
  }
}

/*** ショップページ,商品カテゴリページ ***/
.gr-item .gr-item-img {
  float: left;
  /*margin-top: 20px;*/
  display: inline-block;
}

.gr-item input.skuquantity,
input.skuquantity,
select.skuquantity {
  display: inline-block;
  width: 5em;
  margin-left: .5em;
  margin-right: .5em;
}

.gr-item input.skuquantity:focus,
input.skuquantity:focus,
select.skuquantity:focus {
  outline-color: var(--azalea);
}

.gr-item .more-link {
  display: inline;
}

.gr-item .category-item {
  border-bottom: 1px dashed #ccc;
}

/* テスト ここから */
.gr-item-content .gr-item-img {
  /*float: left;*/
  display: inline-block;
}

.gr-item-content input.skuquantity,
input.skuquantity,
select.skuquantity {
  display: inline-block;
  width: 5em;
  margin-left: .5em;
  margin-right: .5em;
}

.gr-item-content input.skuquantity:focus,
input.skuquantity:focus,
select.skuquantity:focus {
  outline-color: var(--azalea);
}

.gr-item-content .more-link {
  display: inline;
}

.gr-item-content .category-item {
  border-bottom: 1px dashed #ccc;
}

/* テスト ここまで */

.usces_calendar {
  margin: auto;
  width: 100%;
}

.widget_welcart_calendar {
  text-align: center;
}

.gr-item .loopimg {
  display: none;
}

.gr-item .item-caption dl,
.gr-item .item-description dl {
  /*テンプレート変更20231209*/
  margin-left: 249px;
  position: relative;
}

.gr-item .item-caption dl dt,
.gr-item .item-description dl dt {
  /*テンプレート変更20231209*/
  font-weight: bold;
  /*float: left;
clear: left;*/
  width: 4em;
  /*text-align: right;*/
  position: absolute;
}

.gr-item .item-caption dl dd,
.gr-item .item-description dl dd {
  /*テンプレート変更20231209*/
  margin-left: 4.5em;
}

.gr-item .item-caption ul {
  /*margin-left: 160px;*/
}

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

.gr-item .storytitle {
  /*color: #fff;*/
  /*font-weight: normal;
color: #113f8f;
font-size: 160%;
background: none;
padding-left: 0;
padding-bottom: 0;
border-bottom: 1px solid;*/
}

.gr-item .storytitle a {
  color: #371f28;
  text-decoration: none;
}

.gr-item .storytitle {
  /*font-weight: normal;
color: #371f28;
background: none;
padding-left: 0;
padding-bottom: 0;
border-bottom: 2px solid var(--shiraz);
position: relative;
font-size: 160%;*/
  font-weight: normal;
  color: #371f28;
  display: flex;
  align-items: center;
  justify-content: left;
  border: none;
  padding: 0;
  font-size: 150%;
  border-left: 2px solid #cc668b;
  padding-left: .5em;
}

.gr-item .storytitle:before {
  /*content: "\f484";
font-family: "Font Awesome 5 Free";
font-weight: 900;
margin-right: .5em;
color: var(--shiraz);*/
}

.gr-item .storytitle:after {
  /*position: absolute;
content: "";
border-bottom: solid 5px var(--azalea);
bottom: -5px;
left: 0;
width: 30%;*/
  content: "";
  height: 2px;
  flex-grow: 1;
  background-color: var(--azalea);
}

/* テスト ここから */
.gr-item-content .loopimg {
  display: none;
}

.gr-item-content .item-caption dl {
  /*margin-left: 249px;*/
  position: relative;
}

.gr-item-content .item-caption dl dt {
  font-weight: bold;
  width: 4em;
  position: absolute;
}

.gr-item-content .item-caption dl dd {
  margin-left: 4.5em;
}

.gr-item-content .status-wrap {
  text-align: right;
}

.gr-item-content .storytitle a {
  color: #371f28;
  text-decoration: none;
}

.gr-item-content .storytitle {
  font-weight: normal;
  color: #371f28;
  display: flex;
  align-items: center;
  justify-content: left;
  border: none;
  padding: 0;
  font-size: 150%;
  border-left: 2px solid #cc668b;
  padding-left: .5em;

  & a {
    display: inline;
  }
}

.gr-item-content .storytitle:after {
  content: "";
  height: 2px;
  flex-grow: 1;
  background-color: var(--azalea);
}

/* テスト ここまで */

.gr-item .storycontent h2 {
  font-weight: normal;
  color: #371f28;
  display: flex;
  align-items: center;
  justify-content: left;
  border: none;
  padding: 0;
  font-size: 130%;
  background-color: transparent;
}

body.supplement .gr-item .storycontent .item-caption {}

.supplement .gr-item .goto-itempage-wrap {
  /*color: var(--shiraz);
background-color: var(--azalea);
padding: .3em 1em;
border-radius: 0 25px 25px 0;*/
  text-align: right;
  margin-top: -1.5em;
  margin-bottom: 1em;
}

.supplement .gr-item a.goto-itempage {
  /*display: inline-block;*/
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--shiraz);
  text-decoration: none;
  position: relative;
  /*background-color: var(--azalea);
padding: .3em 1em;
border-radius: 0 25px 25px 0;
text-align: right;*/
}

.supplement .gr-item a.goto-itempage:before {
  content: "";
  height: 2px;
  flex-grow: 1;
  background-color: var(--azalea);
  margin-right: 1em;
}

/* テスト ここから */
.supplement,
.product-list {
  .gr-item-content .goto-itempage-wrap {
    text-align: right;
    margin-top: -1.5em;
    margin-bottom: 1em;
  }
}

.supplement,
.product-list {
  .gr-item-content a.goto-itempage {
    /*display: inline-block;*/
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--shiraz);
    text-decoration: none;
    position: relative;
  }
}

.supplement,
.product-list {
  .gr-item-content a.goto-itempage:before {
    content: "";
    height: 2px;
    flex-grow: 1;
    background-color: var(--azalea);
    margin-right: 1em;
  }
}

/* テスト ここまで */

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

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

.usces-member #memberpages #newmember .customer_form {
  width: 80%;
  margin: auto;
}

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

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

.usces-member #memberpages .loginbox p.submit {
  text-align: right;
  margin-right: 0;
  margin-left: auto;
}

.usces-member #memberpages .loginbox #member_login,
.usces-member #memberpages input[type="submit"] {
  /*text-align: right;
margin-right: 0;
margin-left: auto;*/
  background-color: var(--shiraz);
  color: #fff;
  transition: all .3s;
  /*box-shadow: 0 3px 1px #cc668b;*/
  box-shadow: 0 3px 1px #660025;
  border-radius: 1.5em;
}

.usces-member #memberpages .loginbox #member_login:hover,
.usces-member #memberpages input[type="submit"]:hover {
  /*background-color: var(--azalea);*/
  background-color: #db3552;
  /*color: var(--shiraz);*/
  transform: translateY(3px);
  /*box-shadow: 0 -3px 1px #440019;*/
  /*box-shadow: 0 -3px 1px #cc668b;*/
  box-shadow: 0 -3px 1px var(--shiraz);
}

.usces-member #memberpages .loginbox #member_login:focus,
.usces-member #memberpages input[type="submit"]:focus {
  background-color: var(--shiraz);
  box-shadow: 0 -3px 1px #660025;
  /*color: #fff;*/
}

.usces-member #memberpages .loginbox .forgetmenot {
  float: left;
}

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

.usces-member #memberpages .loginbox .new-entry #nav a {
  background-color: var(--shiraz);
  color: #fff;
  transition: all .3s;
  /*box-shadow: 0 3px 1px #cc668b;*/
  box-shadow: 0 3px 1px #660025;
  border-radius: 1.5em;
}

.usces-member #memberpages .loginbox .new-entry #nav a:hover {
  /*background-color: var(--azalea);*/
  background-color: #db3552;
  /*color: var(--shiraz);*/
  transform: translateY(3px);
  /*box-shadow: 0 -3px 1px #cc668b;*/
  box-shadow: 0 -3px 1px var(--shiraz);
}

.usces-member #memberpages .loginbox .new-entry #nav a:focus {
  background-color: var(--shiraz);
  box-shadow: 0 -3px 1px #660025;
  /*color: #fff;*/
}

.usces-member #memberpages input:focus,
.usces-member #memberpages select:focus {
  /*border: 2px solid var(--shiraz);
outline: 0;*/
  outline-color: var(--azalea);
}

.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: #cc668b;
}

.usces-member .send input {
  margin-left: .25em;
  margin-right: .25em;
}

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

.cart_navi ul {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  justify-content: flex-start;
}

.cart_navi ul li {
  width: 25%;
  height: auto;
  margin: .2em 0 .2em 0;
  padding: .3em 1em;
  /*border-radius: 20px;*/
  box-sizing: border-box;
  position: relative;
  /*background-color: var(--azalea);*/
  /*background-color: #efebed;*/
  background-color: #f6f4f4;
  color: #371f28;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  /*border: 1px solid #fff;*/
}

.cart_navi ul li.current {
  background-color: var(--azalea);
  /*background-color: var(--shiraz);*/
  color: var(--shiraz);
  font-weight: 500;
}

.cart_navi ul li:not(:last-child):after {
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  /*top: .2em;*/
  top: 0;
  bottom: 0;
  right: -0.25em;
  margin: auto;
  margin: auto;
  display: flex;
  align-items: center;
  color: #db3552;
  z-index: 1;
}

.cart_navi ul li:first-child {
  margin-left: 0;
  border-radius: 20px 0 0 20px;
}

.cart_navi ul li:last-child {
  margin-right: 0;
  border-radius: 0 20px 20px 0;
}

.usces-cart #cart #cart_table {
  border: none;
}

.usces-cart #cart #cart_table th,
.usces-cart #cart #cart_table td {
  border-color: #d9ced2;
  border-left: none;
  border-right: none;
}

.usces-cart .cart-page .send input {
  border-radius: 20px;
  margin-bottom: 10px;
}

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;
  }
}

.usces-cart input:focus,
.usces-cart select:focus {
  outline-color: var(--azalea);
}

/*** カート入数ボタン ***/
.cart-totalquantity-wrap {
  position: fixed;
  top: 177px;
  left: 0;
  background-color: rgba(238, 204, 216, 0.4);
  color: #cc668b;
  width: 55px;
  height: 55px;
  border-radius: 0 50% 50% 0;
  transition: all .2s;
}

.cart-totalquantity-wrap a {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  juxtify-content: center;
  text-decoration: none;
  padding: 6px 4px 4px 0;
  color: #cc668b;
}

.cart-totalquantity-wrap a i {
  display: block;
  font-size: 130%;
}

.cart-totalquantity-wrap a .cart-totalquantity-inner {
  display: block;
  font-size: 90%;
}

.cart-totalquantity-wrap.move {
  top: 50px;
  left: 0;
}

#cart_table th.aright.amount span {
  margin-left: 1em;
  display: inline-block;
}

/* カートページに挿入する説明書き */
.free-shipping {
  text-align: center;

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

  & span.bold-red {
    color: var(--shiraz);
  }

  & span {
    display: inline-block;
  }
}

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

.current-user-j-kitamura {
  .payment_1 {
    /*display: block;*/
  }
}

/*###### お支払い送料 ######*/
table.daibiki td:nth-of-type(2),
table.shipping td:nth-of-type(2) {
  text-align: right;
}

table.shipping td:nth-of-type(3) {
  text-align: center;
}

.shipping .online-payment-banner {
  text-align: center;

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

/*### 清心元送料・手数料 ###*/
.goou-seishingen-child,
.goou-seishingen-vi-child {
  .shipping-2 {

    & td,
    th {
      text-align: center;
      width: 20%;
      border: solid 1px var(--azalea);
    }
  }
}

/*###### 投稿タイトル上 ######*/
/*.free-shipping {
text-align: center;
background-color: #cc668b;
color: #fff;
margin: 0 40px;
line-height: 120%;
padding: .5em;
margin-top: -18px;
border-radius: 25px;
}
.free-shipping span {
display: inline-block;
font-weight: bold;
}*/
.user-message {
  text-align: center;
  /*background-color: #cc668b;*/
  /*background-color: var(--shiraz);*/
  /*color: #fff;*/
  margin: 0 40px;
  line-height: 120%;
  padding: .5em;
  margin-top: -18px;
  border-radius: 25px;
  border: 2px dashed #cc668b;
  /*background-color: var(--azalea);*/
  color: #cc668b;
}

.user-message span {
  display: inline-block;
}

.user-message,
.shipping {
  .sign-up-wrap a {
    text-decoration: none;
    background-color: #fff;
    background-color: #cc668b;
    border-radius: 20px;
    padding: .2em .5em;
    color: #cc668b;
    color: #fff;
    margin-left: .3em;
    margin-right: .3em;
    display: inline-block;
  }
}

.user-message a:hover {
  color: var(--shiraz);
}

.user-message,
.shipping {
  .sign-up-wrap a:hover {
    background-color: var(--shiraz);
    color: #fff;
  }
}

.user-message span.bold {
  /*font-weight: bold;*/
}

.user-message,
.shipping {
  & span.sign-up-wrap {
    display: block;
    margin-top: .5em;
    margin-bottom: .2em;
    line-height: 140%;
  }
}

.user-message span.sign-in a:hover {
  font-weight: bold;
}

#custom_html-18 {}

.postid-504 .entry-title {}

.postid-504 .article-header {}

.login-user {
  margin-left: 20px;
  margin-right: 20px;
}

.login-user .fab {
  color: #0082aa;
  margin-left: .1em;
  margin-right: .1em;
}

.login-user .fas {
  color: var(--azalea);
  margin-right: .1em;
}

.login-user span {
  display: inline-block;
}

/*###### 投稿/固定ページ本文上下 ######*/
.item.single .article-footer {
  /*margin-top: -100px;*/
}

.widget_text h2 {
  font-weight: normal;
  color: #371f28;
  background: none;
  padding-left: 0;
  padding-bottom: 0;
  border-bottom: 2px solid var(--shiraz);
  position: relative;
  font-size: 160%;
  text-align: left;
}

.widget_text h2.check {
  color: #37331f;
  border-bottom: 2px solid #ccbb66;
}

.widget_text h2:before {
  content: "\f484";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: .5em;
  color: var(--shiraz);
}

.widget_text h2.check:before {
  content: "\f00c";
  color: #ccbb66;
}

.widget_text h2:after {
  position: absolute;
  content: "";
  border-bottom: solid 5px var(--azalea);
  bottom: -5px;
  left: 0;
  width: 30%;
}

.widget_text h2.check:after {
  border-bottom: solid 5px #f7f4e6;
}

.widget_text h3 {
  font-weight: normal;
  color: #371f28;
  display: flex;
  align-items: center;
  justify-content: left;
  border: none;
  padding: 0;
  font-size: 130%;
  background-color: transparent;
  position: relative;
}

.widget_text h3.check {
  color: #37331f;
  border-bottom: 2px solid var(--azalea);
}

.widget_text h3.check:before {
  content: "\f00c";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: var(--shiraz);
  margin-right: .5em;
}

.widget_text h3.check:after {
  position: absolute;
  content: "";
  border-bottom: solid 5px var(--shiraz);
  bottom: -5px;
  left: 0;
  width: 30%;
  ;
}

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

.widget_text dl.check dt {
  /*text-indent: -1.5em;
padding-left: 1.5em;*/
}

.flex-container.process,
.flex-container.worry,
.flex-container.review {
  justify-content: flex-start;
}

.flex-container.process .flex-item {
  width: auto;
  height: 40px;
  margin: .2em 1em .2em 0;
  padding: .3em 1em;
  border-radius: 20px;
  box-sizing: border-box;
  position: relative;
  background: var(--azalea);
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 500;
}

.flex-container.worry .flex-item {
  width: auto;
  height: auto;
  margin: .1em .2em .1em 0;
  padding: .3em 1em;
  /*border-radius: 20px;*/
  box-sizing: border-box;
  ;
  background: var(--azalea);
  font-weight: 500;
  text-align: left;
}

.flex-container.review .flex-item {
  width: auto;
  height: auto;
  margin: .1em .2em .1em 0;
  padding: .3em 1em;
  /*border-radius: 20px;*/
  box-sizing: border-box;
  color: #fff;
  background: var(--shiraz);
  font-weight: 500;
  text-align: left;
}

.flex-container.process .flex-item:not(:last-child):after {
  content: "\f0da";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  /*top: .2em;*/
  top: 0;
  bottom: 0;
  right: -.7em;
  margin: auto;
  margin: auto;
  display: flex;
  align-items: center;
  color: var(--shiraz);
}

.flex-container.process .flex-item:first-child {
  margin-left: 0;
}

.flex-container.process .flex-item:last-child {
  margin-right: 0;
}

img.spirulinaphoto {
  max-width: 224px;
}

img.vegetables {
  max-width: 300px;
}

img.oyster-meat {
  max-width: 300px;
}

img.vegetables-420 {
  max-width: 420px;
}

img.kaki-chan.size-medium {
  max-width: 206px;
}

img.hie-meta.size-medium {
  max-width: 294px;
}

img.hie-chan.size-medium {
  max-width: 173px;
}

img.meta-bo.size-medium {
  max-width: 161px;
}

figure.dic-spirulina img {
  /*max-width: 300px;*/
}

.flex-container.site-spirulina {
  justify-content: space-around;

  .flex-item {
    width: 25%;
  }

  & img:not(.flex-item) {
    width: 48%;
    margin: 0 1% 1%;
  }
}

.item-text-after.safety {
  margin-bottom: 40px;
}

/*** 固定ページ本文下挿入 ***/
.info-container {
  border: 1px solid var(--shiraz);
  padding: 1em;
  border-radius: 4px;
}

.info-container .info-inner {
  margin-bottom: 0;
  text-align: left;
}

.info-container>.info-inner {
  border-bottom: 1px dashed var(--azalea);
}

.info-container .info-inner dt.title {
  text-align: center;
  font-size: 150%;
  font-weight: normal;
}

.info-container .info-inner dd {
  margin-left: 0;
}

.info-container .info-inner span {
  display: inline-block;
}

.info-container .flex-container .flex-item {
  width: 50%;
}

.info-container .flex-container .flex-item:nth-of-type(1) {
  display: flex;
  justify-content: flex-start;
}

.info-container .flex-container .flex-item:nth-of-type(2) {
  display: flex;
  align-items: center;
  justify-content: center;
}

.info-container .flex-container .flex-item {
  .request-wrap {
    margin: auto;
  }

  .request-wrap.and-line {
    /*20250804Update*/
    padding: 0 !important;
    display: inline-block;

    & a {
      display: inline-block;
      margin: 10px 10px 0 10px;
    }

    & a.page-link-btn {
      line-height: 1.3;
      letter-spacing: 0.1em;
      font-size: 1.3rem;
      padding: 1rem 1.8rem 1rem 1rem;

      & i.fa,
      & i.fas {
        margin-right: .3rem;
      }
    }

    a.page-link-btn::before {
      /*20250804Update*/
      font-size: 1rem;
      line-height: 1;
      top: calc(50% - .5rem);
      right: .5rem;
    }
  }
}

.info-container dl dt.company-name {
  font-size: 120%;
}

.info-container .address,
.info-container .tel,
.info-container .date>dd span:not(:last-child) {
  margin-right: 1em;
}

.info-container .address>span.zip,
.info-container .address>span.sub-before {
  margin-right: .5em;
}

.info-container .tel i {
  margin-right: .5em;
}

.info-container .tel a {
  display: inline;
}

.info-container .date dt {
  width: 5em;
}

.info-container .date dd {
  margin-left: 5.5em;
}

.widget_text .widget-title {
  font-weight: normal;
  color: #371f28;
  display: flex;
  align-items: center;
  justify-content: left;
  border-top: 1px solid var(--azalea);
  border-bottom: 1px solid var(--azalea);
  background-color: transparent;
  font-size: 110%;
  padding: 5px 10px 2px 10px;
  margin-bottom: 30px;
}

/*** ウィジェットタイトル（管理画面確認用）非表示 ***/
#custom_html-20,
#custom_html-15 {
  .widget-title {
    display: none;
  }
}

/*###### インフォメーションボックス（補足情報） ######*/
.information-box {
  border-color: #005bab;
}

.information-box p,
.information-box .qualification {
  border-bottom: 1px dashed #005bab;
}

.information-box span {
  display: inline-block;
}

.information-box::before {
  color: #005bab;
  border-right: none;
}

.information-box dl dt.company-name {
  font-size: 120%;
}

.information-box .address,
.information-box .tel {
  margin-right: 1em;
}

.information-box .address>span.zip,
.information-box .address>span.sub-before {
  margin-right: .5em;
}

.information-box .tel i {
  margin-right: .5em;
}

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

dd.mail-form-dd input[name="e1"] {
  width: 3em;
  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: var(--shiraz);
  box-shadow: 0 3px 1px #660025;
  color: #fff;
  transition: all 0.3s;
  padding: .5em 1em;
  cursor: pointer;
  /*margin-top: 20px;*/
}

dd.mail-form-dd input[type="button"]:hover {
  background: #db3552;
  /*box-shadow: 0 -3px 1px var(--shiraz);*/
}

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

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

dl.mail-form-dl.vi dt {
  width: 16em;
}

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

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

/*###### 特商法 ######*/
.page.tokushoho th {
  min-width: 8em;
}

.page.tokushoho th span,
.page.tokushoho td span {
  display: inline-block;
}

.page.tokushoho td span:not(:last-child) {
  margin-right: .5em;
}

/*###### 清心元 ######*/
/*** grid layout ***/
.goou-seishingen,
.goou-seishingen-vi,
.goou-seishingen-en,
.goou-seishingen-zh {
  .grid-container.plant {
    /*grid-template-columns: 4fr 1fr;*/
    grid-template-columns: 80.3129074% 19.6870926%;
    max-width: 767px;
    /*.grid-item:nth-of-type(3) {
  grid-column: 1 / 3;
  }*/
  }

  .shoyaku .price {
    /*color: #ed5b14;*/
  }

  .lang-wrap {
    text-align: center;

    & a {
      display: inline-block;
      text-decoration: none;
      margin: auto .3em;
      color: #371f28;
      transition: all .5s;

      & img {
        width: 24px;
        height: auto;
        border-right: 1px solid #ccc;
        border-bottom: 1px solid #ccc;
      }

      & span {
        font-size: 14px;
        margin-left: .25em;
      }
    }

    & a:hover {
      color: #d5809f;
    }
  }
}

.goou-seishingen-child,
.goou-seishingen-vi-child,
.goou-seishingen-en-child,
.goou-seishingen-zh-child,
.product-inquiry,
.contact-vi {
  .lang-wrap {
    text-align: center;

    & a {
      display: inline-block;
      text-decoration: none;
      margin: auto .3em;
      color: #371f28;
      transition: all .5s;

      & img {
        width: 24px;
        height: auto;
        border-right: 1px solid #ccc;
        border-bottom: 1px solid #ccc;
      }

      & span {
        font-size: 14px;
        margin-left: .25em;
      }
    }

    & a:hover {
      color: #d5809f;
    }
  }
}

.goou-seishingen {
  .grid-container.item {
    grid-template-columns: 64% 36%;
    width: 35.8%;
    margin-left: 63.2%;
    gap: 1%;
    /*grid-template-columns: 64.2% 22.9% 12.9%;*/
  }

  .grid-container.item.including-price {
    width: auto;
    margin-left: auto;
    gap: 1%;
    grid-template-columns: 58% 25.6% 14.4%;

    .grid-item.price {
      flex-direction: column;
      align-items: flex-start;

      .field {
        display: inline-block;

        .field_name,
        .field_price,
        .field_content {
          display: inline-block;
        }

        .field_price {
          color: #e5764f;
        }

        .field_name {
          font-weight: bold;

          .tax {
            font-size: 90%;
            font-weight: normal;
            font-style: normal;
          }
        }
      }
    }
  }

  .request-wrap.shoyaku {
    margin-top: 20px;
  }
}

.goou-seishingen-vi,
.goou-seishingen-en,
.goou-seishingen-zh {
  .grid-container.item {
    grid-template-columns: 64% 36%;
  }
}

.goou-seishingen-nichiyakukintan {
  .grid-container.plant {
    grid-template-columns: 80.3129074% 19.6870926%;
    max-width: 767px;
  }

  .grid-container.item {
    grid-template-columns: 39% 39% 22%;
    width: 58.3%;
    margin-left: 41.7%;
  }

  .grid-container.photo {
    grid-template-columns: 80%;
    justify-content: center;
  }
}

.goou-seishingen,
.goou-seishingen-nichiyakukintan {
  .grid-container.item {
    /*width: 35.8%%;
 margin-left: 64.2%;*/
  }
}

.grid-container.symptoms {
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  justify-content: space-between;
  margin: 0;
  margin-bottom: 80px;
}

.grid-container.symptoms>div,
.grid-container.symptoms>li {
  overflow: hidden;
  flex-direction: column;
  position: relative;
  /*aspect-ratio: 1 / 1;*/
  border-radius: 50%;

  /*border-bottom: 8px solid #444;*/
  & span.title {
    line-height: 110%;
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 30%;
    margin: auto;
    text-align: center;
    z-index: 1;
    /* transform: rotate(8deg);*/
    font-size: 120%;
    font-weight: bold;
    color: #371f28;
    text-shadow: 0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff;
  }

  & img {
    transition: all .3s ease-in-out;
    display: block;
  }
}

.grid-container.symptoms>div:nth-of-type(odd),
.grid-container.symptoms>li:nth-of-type(odd) {
  & span.title {
    transform: rotate(8deg);
  }
}

.grid-container.symptoms>div:nth-of-type(even),
.grid-container.symptoms>li:nth-of-type(even) {
  & span.title {
    transform: rotate(-8deg);
  }
}

.entry-content .shoyaku h3 {
  background-color: var(--azalea);
  border: none;
  color: var(--shiraz);
  font-weight: bold;
  padding: .4em 1em .3em 1em;
  border-radius: 20px;
}

.shoyaku .exp .field {
  border: none;
}

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

.shoyaku .exp .field .field_price {
  color: #e5764f;
}

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

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

.shoyaku dl.dl-single-line {}

.shoyaku dl.dl-single-line>dt {
  clear: none;
}

.shoyaku dl.dl-single-line>dd {}

.shoyaku .tel-wrap {
  & p {
    text-align: center;
    margin-bottom: 0;

    .tel {
      margin-left: .5em;
      margin-right: .5em;
      display: inline-block;
      font-size: 120%;

      & i.fas {
        margin-right: .5em;
      }

      & a {
        text-decoration: none;
      }
    }
  }
}

.shoyaku .tel-reception span:nth-of-type(1) {
  margin-right: 1em;
}

dl.symptoms {
  margin-left: 0;

  & dd {
    margin-left: 0;
  }
}

dl.symptoms dd dl,
dl.symptoms dd dl dd {
  /*margin-left: 0;
padding-left: 0;*/
}

.float-box.symptoms {
  overflow: hidden;
  /*flex-direction: column;*/
  position: relative;
  border-radius: 50%;
  width: auto;
  min-width: 150px;
  max-width: 180px;
  height: auto;

  & span.title {
    line-height: 110%;
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 30%;
    margin: auto;
    text-align: center;
    z-index: 1;
    font-size: 120%;
    font-weight: bold;
    color: #371f28;
    text-shadow: 0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff,
      0 0 2px #fff;
  }

  & img {
    display: block;
  }
}

.float-box.symptoms.odd {
  & span.title {
    transform: rotate(8deg);
  }
}

.float-box.symptoms.even {
  & span.title {
    transform: rotate(-8deg);
  }
}

.goou-seishingen-nichiyakukintan {
  .dl-single-line>dt {
    width: 7em;
  }

  .dl-single-line>dd {
    margin-left: 7.5em;
  }
}

.information-box.lang {
  & p {
    margin-bottom: 0;
  }
}

/*### FAQ ###*/
.faq-wrap.is-style-accordion {
  .faq {
    .faq-question {
      background-color: var(--shiraz);
    }

    .faq-answer-content .faq-question {
      background-color: var(--carousel-pink);

      .faq-question-content {
        /*background-color: var(--shiraz);*/
      }
    }
  }
}

/*###### 投稿ページ ######*/
.single:not(.item) .search-box input {}

.search-box input.search-edit {
  border-radius: 25px;
}

.search-box input.search-edit:focus {
  outline-color: var(--azalea);
}

/*###### コメント欄 ######*/
.comment-area .comment-title:before {
  content: "\f075";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  /*margin-right: .5em;*/
  color: var(--azalea);
}

.comment-area .comment-title .sub-caption {
  display: block;
}

.comment-form .comment-btn {
  /*background-color: #f7e6ec;*/
  /*border-color: #cc668b;*/
  color: #30292b;
  /*transition: all .3s;*/
}

.comment-form .comment-btn:hover {
  /*background-color: #f7e6ec;*/
}

.comment-form .form-submit {
  text-align: center;
}

.comment-form .form-submit input[type="submit"] {
  width: 11em;
  margin-left: auto;
  margin-right: auto;
  border-radius: 1.5em;
  background-color: #f7e6ec;
  border-color: var(--azalea);
  color: #30292b;
  transition: all .3s;
}

.comment-form .form-submit input[type="submit"]:hover {
  background-color: #efebed;
}

.comment-form textarea:focus,
.comment-form input:focus {
  outline-color: var(--azalea);
}

/*###### サイトマップ ######*/
div.sitemap ul {
  list-style: none;
  margin-left: 0;
}

div.sitemap>ul {
  padding-left: 0;
}

div.sitemap ul>li {
  /*list-style: none;*/
  margin-left: 0;
}

div.sitemap ul li:before {}

.sitemap .entry-title:before {
  /*font-family: "Font Awesome 5 Free";
font-weight: 900;
content: "\f0e8";
color: var(--azalea);*/
}

/*###### SNS ######*/
.sns-buttons a {
  border-radius: 20px;
}

.sns-share,
.sns-follow {
  position: relative;
  text-align: center;
  /*color: var(--shiraz);*/
  color: #87787d;
}

.sns-follow-message {
  /*text-align: left;*/
}

.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: "\f118";
  padding-right: .5em;
  padding-left: .5em;
  /*color: var(--shiraz);*/
  color: var(--azalea);
}

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

/*###### モバイルメニュー ######*/
/*** ヘッダーモバイルボタン ***/
.mobile-header-menu-buttons {
  /*box-shadow: none;*/
  background-color: var(--shiraz);
}

.logo-menu-button .menu-button-in {
  padding-left: 10px;
  padding-right: 10px;
}

.menu-button-in .site-logo-image {
  /*max-width: 95%;
height: auto;*/
  vertical-align: middle;
  display: inline-block;
  opacity: 0;
  animation: logoRising 1.5s ease 0.5s alternate forwards;
  /*margin-bottom: 5px;*/
}

/*** サブメニュー折りたたみ ***/
/*.navi-menu-content .button:not(.current-menu-item):not(.current-menu-ancestor) > .sub-menu:not(.active) {
display: none;
}*/
/* ハンバーガーメニューアニメーション */
.mobile-menu-buttons .navi-menu-button {}

#navi-menu-close {
  background-color: rgba(0, 0, 0, 0.4) !important;
}

.mobile-menu-buttons .navi-menu-button label.menu-button-in {
  overflow: hidden;
  display: block;
  position: relative;
  /*width: 30px;*/
  width: 100%;
  height: 40px;
  z-index: 0;
  /*margin-left: 20px;*/
  margin: auto;
}

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

.mobile-menu-buttons .menu-button .menu-button-in .menu-icon span {
  color: #fff;
  font-size: 27px;
  /*padding-top: 2px;*/
}

.mobile-menu-buttons .navi-menu-button:last-child a.menu-button-in .menu-icon span {
  color: var(--shiraz);
}

.mobile-menu-buttons li.menu-button {
  border-left: 1px solid #fff;
  background-color: var(--shiraz);
}

.mobile-menu-buttons li.navi-menu-button:last-child {
  border-left: 1px solid var(--shiraz);
  background-color: #fff;
}

.mobile-menu-buttons .navi-menu-button a.menu-button-in {}

.mobile-menu-buttons .navi-menu-button a.menu-button-in .menu-icon,
.mobile-menu-buttons .search-menu-button label.menu-button-in .menu-icon {
  /*margin-top: 9px;*/
  /*Cocoonバージョン: 2.7.3.1でコメントアウト*/
}

.mobile-menu-buttons .navi-menu-button label.menu-button-in span,
.mobile-menu-buttons .navi-menu-button label.menu-button-in:before,
.mobile-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: var(--shiraz);
}

.mobile-menu-buttons .navi-menu-button .navi-menu-icon {
  display: none;
}

.mobile-menu-buttons .navi-menu-button .navi-menu-icon span {}

.mobile-menu-buttons .navi-menu-caption {}

.mobile-menu-buttons .navi-menu-button .navi-menu-icon span,
.mobile-menu-buttons .navi-menu-button .navi-menu-icon:before,
.mobile-menu-buttons .navi-menu-button .navi-menu-icon:after {}

.mobile-menu-buttons .navi-menu-button label.menu-button-in span {
  overflow: hidden;
  z-index: 1;
}

.mobile-menu-buttons .navi-menu-button label.menu-button-in:before {
  z-index: 2;
  transform: translate(0, -9px);
  content: "";
}

.mobile-menu-buttons .navi-menu-button label.menu-button-in:after {
  z-index: 2;
  transform: translate(0, 9px);
  content: "";
}

.mobile-menu-buttons .navi-menu-button label.menu-button-in span {
  opacity: 1;
  transition: opacity 300ms 100ms;
}

.mobile-menu-buttons .navi-menu-button label.menu-button-in:before,
.mobile-menu-buttons .navi-menu-button label.menu-button-in:after {
  transition: transform 400ms;
}

.mobile-menu-buttons .navi-menu-button #navi-menu-input:checked+label.menu-button-in span {
  opacity: 0;
  transition: opacity 300ms;
}

.mobile-menu-buttons .navi-menu-button #navi-menu-input:checked+label.menu-button-in:before {
  transform: rotate(45deg);
}

.mobile-menu-buttons .navi-menu-button #navi-menu-input:checked+label.menu-button-in:after {
  transform: rotate(-45deg);
}

.mobile-menu-buttons .navi-menu-button .navi-menu-content {
  width: 400px;
  padding-top: 20px;
}

.mobile-menu-buttons .navi-menu-button .navi-menu-close-button {
  display: none;
}

/*.navi-menu-content .menu-item:not(.current-menu-item):not(.current-menu-parent) > a:hover:after*/
.navi-menu-content .menu-item:not(.current-menu-item)>a:hover:after {
  content: "\f554";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-left: .5em;
  color: var(--azalea);
  vertical-align: bottom;
  /*font-size: 90%;*/
}

.navi-menu-content .current-menu-item>a:after

/*,
.navi-menu-content .current-menu-parent > a:after*/
  {
  content: "\f118";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-left: .5em;
  color: var(--azalea);
}

body .mobile-menu-buttons .search-menu-button {
  display: none;
}

body.blog .mobile-menu-buttons .search-menu-button,
body.single:not(.item) .mobile-menu-buttons .search-menu-button {
  display: flex;
  justify-content: center;
  align-items: center;

  .search-menu-icon {}
}

/*** フッターモバイルボタン ***/
.mobile-footer-menu-buttons {
  /*box-shadow: none;*/
  background-color: rgba(255, 255, 255, 0.8);
}

body .mobile-footer-menu-buttons {
  display: none;
}

body.blog .mobile-footer-menu-buttons,
body.single:not(.item) .mobile-footer-menu-buttons {
  display: flex;
}

.mobile-footer-menu-buttons .menu-button .menu-button-in {
  overflow: hidden;
  display: block;
  position: relative;
  width: 30px;
  height: auto;
  margin: auto;
  /*height: 40px;
z-index: 0;*/
  /*margin-left: 20px;*/
}

.mobile-footer-menu-buttons .menu-button .menu-button-in .menu-caption {
  display: none;
}

.mobile-footer-menu-buttons .menu-button .menu-button-in .menu-icon span {
  color: var(--shiraz);
  font-size: 27px;
  padding-top: 6px;
}

/* ###### トップへ戻る ###### */
.go-to-top-button {
  border-radius: 50%;
}

.go-to-top-button span {
  font-size: 150%;
}

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

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

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

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

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

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

/* ###### Chart.jsグラフ ###### */
/* canvasの幅と高さを自動調整 */
canvas#myPieChart {
  /*width: 100% !important;
height: auto !important;
min-height: 300px;*/
}

/*###### 非表示項目 ######*/
.page .date-tags,
.single.item .date-tags,
.page .author-info,
.categoryid-2 .author-info {
  display: none;
}

.contact,
.contact-vi,
.privacy-policy,
.privacy-policy-vi,
.tokushoho,
.sitemap {

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

.members-only:not(.usces-logged-in) .widget_custom_html {
  display: none;
}

/*### ブログ ###*/
.reduce-medication .subtitle {
  font-style: italic;
  margin-top: -10px;
  margin-bottom: 20px;
  font-size: 1.1em;
}

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1024px以上*/
@media screen and (min-width: 1024px) {
  .header-in .tagline {
    display: inline-block;
  }

  /*###### コメント欄 ######*/
  .comment-form .comment-btn {
    /*width: 50%;
 margin-left: auto;
 margin-right: auto;*/
  }

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

  .navi-footer-in {
    margin-left: 200px;
  }
}

/*1255px以下*/
@media screen and (max-width: 1255px) {
  #navi.fixed {
    width: initial;
    min-width: initial;
    border-radius: 0 0 0 0;
  }

  /*** grid layout ***/
  .grid-container.catbox {
    /*grid-template-columns: 1fr 1fr;
 gap: 20px;*/
  }
}

/*1179px以下*/
@media screen and (max-width: 1179px) {

  /*###### 商品詳細ページ ######*/
  .single.item .item-caption.safety dl dt {
    float: none;
    /*width: 100%;*/
  }

  .single.item .item-caption.safety dl dd {
    /*margin-left: 2em;*/
  }
}

/*1023px以下*/
@media screen and (max-width: 1023px) {
  .mobile-menu-buttons {
    align-items: stretch;
    /*Cocoon2.6.9継承*/
  }

  .mobile-menu-buttons>li {
    padding-top: 3px;
    /*Cocoon2.6.9継承*/
  }

  /*###### ナビゲーション ######*/
  #navi {
    /*box-shadow: none;*/
  }

  /*###### アピールエリア ######*/
  #appeal {
    height: calc(100vw * 0.5);
  }

  /*###### 零売 ######*/
  .reibai.page .flex-container.merit .flex-item {
    width: 48%;
  }

  /*** カート入数ボタン ***/
  .cart-totalquantity-wrap {
    top: 50px;
    left: 0;
  }

  .cart-totalquantity-wrap.move {
    top: 0px;
    left: 0;
  }

  .flex-container.site-spirulina .flex-item {
    width: 50%;
  }

  /*###### 投稿タイトル上 ######*/
  .user-message .not-member-wrap,
  .user-message.left {
    text-align: left;
  }

  .user-message .sign-up-wrap {
    text-align: center;
  }
}

/*1162px以下*/
@media screen and (max-width: 1162px) {
  .shoyaku .tel-wrap {
    clear: both;
    max-width: 23em;
    margin: auto;
  }
}

/*990px以下*/
@media screen and (max-width: 990px) {
  /*.shoyaku .tel-wrap {
 clear: both;
 max-width: 23em;
 margin: auto;
 }*/
}

/*860px以下*/
@media screen and (max-width: 860px) {
  /*** grid layout ***/
  /*.grid-container.catbox {
 grid-template-columns: 1fr 1fr;
 gap: 20px;
 }*/
}

/*834px以下*/
@media screen and (max-width: 834px) {

  /*必要ならばここにコードを書く*/
  /*###### 処方せん ######*/
  .prescription.page .flex-container.flow>.flex-item>p>img {
    width: 33%;
  }

  .prescription.page .flex-container.flow .flex-item {
    width: 98%;
  }

  .prescription.page .flex-container.flow>.flex-item:not(:last-child):after {
    top: initial;
    left: 0;
    transform: rotate(90deg) translate(2.4rem, -1rem);
  }

  /*###### 零売 ######*/
  .reibai.page .flex-container.merit>.flex-item img,
  .reibai.page .flex-container.flow:not(.line)>.flex-item>img,
  .reibai.page .flex-container.flow:not(.line)>.flex-item>a img {
    width: 33%;
  }

  .reibai.page .flex-container.merit>.flex-item,
  .reibai.page .flex-container.flow:not(.line)>.flex-item {
    width: 98%;
  }

  .reibai.page .flex-container.flow:not(.line)>.flex-item:not(:last-child):after {
    top: initial;
    left: 0;
    transform: rotate(90deg) translate(2.4rem, -1rem);
  }

  .reibai.page .flex-container.line .flex-item {}

  .reibai.page .flex-container.line>.flex-item>a img {}

  /*###### 清心元 ######*/
  .goou-seishingen-nichiyakukintan {
    .grid-container.photo {
      grid-template-columns: 50% 50%;
    }
  }

  /*###### 楽養源（スピルリナ） ######*/
  .flex-container.site-spirulina {
    & img:not(.flex-item) {
      width: 24%;
      margin: 0 .5% 1%;
    }
  }

  /*** メンバーページ ***/
  .usces-member #memberpages .loginbox,
  .usces-member #memberpages #newmember .customer_form {
    width: 100%;
  }

  /*** SNS ***/
  .sns-follow-message {
    /*text-align: center;*/
  }

  /* フッター */
  .navi-footer-in {
    & ul.menu-footer {
      & li {
        & a {
          border: 0;
        }
      }

      & li:last-child a {
        border: 0;
      }
    }
  }
}

/*780px以下*/
@media screen and (max-width: 780px) {

  /*###### トップページ ######*/
  .home.page .flex-container.menu .flex-item {
    width: 48%;
  }
}

/*768px以下*/
@media screen and (max-width: 768px) {

  /*Welcart商品ページ*/
  .single.item #itempage form dl {
    margin-left: 0;
    margin-left: auto;
  }

  .single.item #itempage form ul:not(.worry) {
    margin-left: 0;
    margin-left: auto;
  }

  .single.item #itempage form dl dt {
    position: static;
    float: none;
    clear: none;
    text-align: left;
    width: auto;
  }

  .single.item #itempage form dl dd {
    margin-left: auto;
  }

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

  /*###### 問い合せ（求人）フォーム ######*/
  dl#Inquiry dt,
  dl#Inquiry.vi dt,
  dl.inquiry dt {
    /*float: none;*/
    width: auto;
    text-align: left;
  }

  dl#Inquiry dt,
  dl#Inquiry.vi dt,
  dl.inquiry:not(.not-float-none) dt {
    float: none;
  }

  dl#Inquiry dd,
  dl#Inquiry.vi dd,
  dl.inquiry:not(.not-float-none) dd {
    margin-left: 0;
  }

  /*** 問診票フォーム ***/
  .contact,
  .entry {

    & dl.inquiry.dl-single-line>dt,
    & dl.dl-single-line>dt {
      width: auto;
    }

    & dl.inquiry.dl-single-line:not(.not-float-none)>dt,
    & dl.dl-single-line:not(.not-float-none)>dt {
      float: none;
    }

    & dl.inquiry.dl-single-line>dd,
    & dl.dl-single-line>dd {
      margin-left: 0;
    }

    & dl.inquiry.dl-single-line>dd.has-parent,
    & dl.inquiry>dd.has-parent {
      & dt {
        float: none;
        width: auto;
      }

      & dd {
        margin-left: 0;
      }
    }
  }

  /*.contact dl.inquiry.dl-single-line > dt,
 .contact dl.dl-single-line > dt {
 float: none;
 width: auto;
 }
 .contact dl.inquiry.dl-single-line > dd,
 .contact dl.dl-single-line > dd {
 margin-left: 0;
 }
 .contact dl.inquiry.dl-single-line > dd.has-parent,
 .contact dl.inquiry > dd.has-parent {
  & dt {
  float: none;
  width: auto;
  }
  & dd {
  margin-left: 0;
  }
 }
 .entry {
  & dl.inquiry.dl-single-line > dt,
  & dl.dl-single-line > dt {
  width: auto;
  }
  & dl.inquiry.dl-single-line:not(.not-float-none) > dt,
  & dl.dl-single-line:not(.not-float-none) > dt {
  float: none;
  }
  & dl.inquiry.dl-single-line > dd,
  & dl.dl-single-line > dd {
  margin-left: 0;
  }
  & dl.inquiry.dl-single-line > dd.has-parent,
  & dl.inquiry > dd.has-parent {
   & dt {
   float: none;
   width: auto;
   }
   & dd {
   margin-left: 0;
   }
  }
 }*/
  /*** 商品問合せフォーム（清心元） ***/
  .product-inquiry dd.has-parent.your-quantity,
  .contact-vi dd.has-parent.your-quantity,
  .contact-vi dl.inquiry.dl-single-line>dd.your-quantity,
  .contact-vi dl.dl-single-line>dd.your-quantity {
    margin-left: 1em;
  }

  /*** ベトナムフォーム ***/
  .contact-vi dl.inquiry.dl-single-line>dt,
  .contact-vi dl.dl-single-line>dt {
    float: none;
    width: auto;
  }

  .contact-vi dl.inquiry.dl-single-line>dd:not(.your-quantity),
  .contact-vi dl.dl-single-line>dd:not(.your-quantity) {
    margin-left: 0;
  }

  .contact-vi dl.inquiry.dl-single-line>dd.has-parent:not(.your-quantity),
  .contact-vi dl.inquiry>dd.has-parent:not(.your-quantity) {
    & dt {
      float: none;
      width: auto;
    }

    & dd {
      margin-left: 0;
    }
  }

  /*###### 清心元 ######*/
  .goou-seishingen-nichiyakukintan {
    .dl-single-line>dt {
      /*float: none;*/
      width: auto;
    }

    .dl-single-line>dd {
      margin-left: 0;
    }
  }
}

/*739px以下 */
@media screen and (max-width: 739px) {

  /*** メンバーページ ***/
  .usces-member #memberpages #newmember .customer_form th {
    width: 100%;
    background-color: transparent;
    padding-top: .3em;
  }

  .usces-member #memberpages #newmember .customer_form .inp1 td {
    width: 50%;
  }

  /*** 清心元 ***/
  .shoyaku dl.dl-single-line>dt:not(.float-2) {
    width: 100%;
    float: none;
  }

  .shoyaku dl.dl-single-line>dd:not(.float-2) {
    margin-left: auto;
  }

  .goou-seishingen {
    .request-wrap.shoyaku {
      font-size: 150%;

      & a.page-link-btn:not(.faq) {
        font-weight: 700;
        letter-spacing: 0em;
        font-size: 1.0rem;
        padding: 1.0rem 2.2rem 1.2rem 1.0rem;

        & i.fa,
        & i.fas {
          margin-right: 0.5rem;
        }
      }

      & a.page-link-btn.faq {
        font-weight: 700;
        letter-spacing: 0em;
        font-size: 0.8rem;
      }

      & a.page-link-btn:not(.faq):before {
        font-size: .9rem;
        top: calc(50% - .55rem);
        right: 1rem;
      }
    }
  }

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

/*599px以下*/
@media screen and (max-width: 599px) {

  /*必要ならばここにコードを書く*/
  /*###### 共通 ######*/
  .entry-content img.alignleft:not(.kaki-chan):not(.hie-chan):not(.meta-bo):not(.hie-meta):not(.rina-chan):not(.oyster-meat):not(.vegetables):not(.vegetables-420):not(.maxwidth-40),
  .entry-content img.alignright:not(.kaki-chan):not(.hie-chan):not(.meta-bo):not(.hie-meta):not(.rina-chan):not(.oyster-meat):not(.vegetables):not(.vegetables-420):not(.maxwidth-40),
  .item-caption img.alignleft:not(.kaki-chan):not(.hie-chan):not(.meta-bo):not(.hie-meta):not(.rina-chan):not(.oyster-meat):not(.vegetables):not(.vegetables-420):not(.maxwidth-40),
  .item-caption img.alignright:not(.kaki-chan):not(.hie-chan):not(.meta-bo):not(.hie-meta):not(.rina-chan):not(.oyster-meat):not(.vegetables):not(.vegetables-420):not(.maxwidth-40),
  figure.alignleft,
  figure.alignright,
  .wp-block-image.alignleft,
  .wp-block-image.alignright {
    max-width: 50%;
    height: auto;
  }

  img.kaki-chan.size-medium,
  img.hie-meta.size-medium,
  img.hie-chan.size-medium,
  img.meta-bo.size-medium,
  img.rina-chan.size-medium,
  img.oyster-meat,
  img.vegetables-420,
  img.vegetables {
    width: 33%;
    height: auto;
  }

  img.maxwidth-40 {
    /*width: 40%;
 height: auto;*/
  }

  /*###### アピールエリア ######*/
  .appeal-content {
    /*margin-top: 60px;*/
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    margin: auto;
  }

  /*###### トップページ ######*/
  .home.page .flex-container.pict .flex-item {
    width: 33.333333%;
  }

  /*###### 商品詳細ページ ######*/
  .single.item .item-caption.safety dl dt {
    float: left;
    clear: left;
    /*width: 17em;*/
  }

  .single.item .item-caption.safety dl dd {
    /*margin-left: 17.5em;*/
  }

  /*###### 食事の順序 ######*/
  .flex-container.order .flex-item {
    width: 100%;
    margin: 0 0 1em 0;
  }

  .flex-container.order .flex-item:not(:last-child):after {
    content: "\f0d7";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    top: 0;
    bottom: -1.2em;
    right: 0;
    left: 0;
    align-items: flex-end;
    justify-content: center;
  }

  /*** 固定ページ本文下挿入 ***/
  .info-container .flex-container .flex-item {
    .request-wrap.and-line {

      /*20250804Update*/
      & a.page-link-btn {
        line-height: 1.3;
        letter-spacing: 0.1em;
        font-size: 1.1rem;
        padding: 1rem 1.5rem 1rem .8rem;

        & i.fa,
        & i.fas {
          margin-right: .4rem;
        }
      }

      a.page-link-btn::before {
        /*20250804Update*/
        font-size: .8rem;
        line-height: 1;
        top: calc(50% - .3rem);
        right: .5rem;
      }
    }
  }
}

/*536px以下*/
@media screen and (max-width: 536px) {

  /*必要ならばここにコードを書く*/
  /*###### 商品詳細ページ ######*/
  .single.item .item-caption.safety dl dt {
    float: none;
  }

  .single.item .item-caption.safety dl dd {}

  /*###### カートページ ######*/
  .cart_navi ul li {
    /*width: 50%;*/
    font-size: 12px;
  }

  /*###### プライバシーポリシー・特商法 ######*/
  dl.mail-form-dl dt {
    float: none;
    width: auto;
  }

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

  /*### ダウンロードボタン ###*/
  .dl-button.pdf {
    margin-left: auto;
    margin-right: auto;
  }
}

/*480px以下*/
@media screen and (max-width: 480px) {

  /*必要ならばここにコードを書く*/
  /*###### 共通 ######*/
  .entry-content img.alignleft:not(.kaki-chan):not(.hie-chan):not(.meta-bo):not(.hie-meta):not(.rina-chan):not(.oyster-meat):not(.vegetables-420):not(.vegetables):not(.maxwidth-50):not(.maxwidth-40):not(.dl-thumbnail),
  .entry-content img.alignright:not(.kaki-chan):not(.hie-chan):not(.meta-bo):not(.hie-meta):not(.rina-chan):not(.oyster-meat):not(.vegetables-420):not(.vegetables):not(.maxwidth-50):not(.maxwidth-40):not(.dl-thumbnail),
  .item-caption img.alignleft:not(.kaki-chan):not(.hie-chan):not(.meta-bo):not(.hie-meta):not(.rina-chan):not(.oyster-meat):not(.vegetables-420):not(.vegetables),
  .item-caption img.alignright:not(.kaki-chan):not(.hie-chan):not(.meta-bo):not(.hie-meta):not(.rina-chan):not(.oyster-meat):not(.vegetables-420):not(.vegetables),
  figure.alignleft,
  figure.alignright,
  .wp-block-image.alignleft,
  .wp-block-image.alignright,
  .float-box.right:not(.symptoms),
  .float-box.left:not(.symptoms) {
    float: none;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
    width: 100%;
    max-width: 100%;
  }

  .float-box.symptoms {
    max-width: 40%;
    margin-right: 1em;
  }

  .clearfix.large-photo>img,
  .clearfix.large-photo:not(.maxwidth-50):not(.maxwidth-40)>p img,
  .clearfix.large-photo>.wp-block-image {
    max-width: 100%;
  }

  /*###### トップページ ######*/
  .home.page .flex-container.menu .flex-item {
    width: 98%;
  }

  /*###### 処方せん ######*/
  .prescription.page .flex-container.flow>.flex-item>p>img {
    /*width: 50%;*/
    width: 80%;
  }

  /*###### 零売 ######*/
  .reibai.page .flex-container.flow .flex-item {
    /*width: 98%;*/
  }

  /*Welcart商品一覧*/
  .gr-item .item-caption dl {
    margin-left: 0;
    margin-left: auto;
  }

  .gr-item .item-caption dl dt {
    position: static;
    float: left;
    clear: left;
  }

  .gr-item .item-caption ul:not(.worry) {
    margin-left: 0;
    margin-left: auto;
  }

  /*商品ページ*/
  .single.item #itempage form dl {
    margin-left: 0;
    margin-left: auto;
  }

  .single.item #itempage form dl dt {
    position: static;
    float: left;
    clear: left;
  }

  .single.item #itempage form dl dd {}

  #itempage .item-caption ul:not(.worry) {
    margin-left: 0;
    margin-left: auto;
  }

  #itempage .itemimg {
    float: none;
    display: block;
    text-align: center;
  }

  /*### 清心元 ###*/
  .shoyaku dl.dl-single-line>dt.float-1 {
    float: left;
    width: auto;
  }

  .shoyaku dl.dl-single-line>dd.float-1 {}

  /*###### コロナ後遺症 ######*/
  .long-covid {
    .dl-single-line {
      float: none;

      & dt {
        width: 100%;
      }

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

  img.oyster-meat,
  img.vegetables-420,
  img.vegetables {
    max-width: 50%;
  }

  /*###### カートページ ######*/
  .cart_navi ul li {
    width: 100%;
    font-size: 14px;
    margin-bottom: .5em;
    border-radius: 20px;
  }

  .cart_navi ul li:first-child {
    border-radius: 20px;
  }

  .cart_navi ul li:last-child {
    border-radius: 20px;
  }

  .cart_navi ul li:not(:last-child):after {
    content: "\f0d7";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    top: 0;
    bottom: -1.2em;
    right: 0;
    left: 0;
    align-items: flex-end;
    justify-content: center;
  }

  /*###### 求人 ######*/
  .recruitment dl {
    /*margin-bottom: 0.5em;*/
  }

  .recruitment dl>dd {
    margin-left: 0.5em;
  }

  .recruitment .dl-single-line>dt {
    /*float: none;*/
  }

  /*##### ブログ #####*/
  .short.dl-single-line>dt {
    float: none;
  }

  .short.dl-single-line>dd {
    margin-left: 0;
  }

  /*投稿ページ本文下*/
  .widget_text img.alignleft:not(.kaki-chan):not(.hie-chan):not(.meta-bo):not(.hie-meta):not(.rina-chan):not(.oyster-meat):not(.vegetables-420):not(.vegetables),
  .widget_text img.alignright:not(.kaki-chan):not(.hie-chan):not(.meta-bo):not(.hie-meta):not(.rina-chan):not(.oyster-meat):not(.vegetables-420):not(.vegetables) {
    float: none;
    display: block;
    text-align: center;
  }

  /*###### 楽養源（スピルリナ） ######*/
  .flex-container.site-spirulina {
    .flex-item {
      /*width: 100%;*/
      width: 50%;
    }

    & img:not(.flex-item) {
      width: 48%;
      margin: 0 1% 1%;
    }
  }

  /*** 固定ページ本文下 ***/
  .info-container .flex-container .flex-item {
    width: 100%;
  }

  .info-container .flex-container .flex-item a.page-link-btn:before {
    font-size: 1.0rem;
  }

  /*** ページリンクボタン ***/
  div.request-wrap {
    font-size: 150%;
  }

  a.page-link-btn:not(.faq):not(.item-list) {
    font-weight: 700;
    letter-spacing: 0em;
    font-size: 1.0rem;
    padding: 1.0rem 2.2rem 1.2rem 1.0rem;
  }

  a.page-link-btn.faq {
    /*padding: .5rem 1.0rem .5rem 1.0rem;*/
  }

  a.page-link-btn i.fa,
  a.page-link-btn i.fas {
    margin-right: 0.5rem;
  }

  a.page-link-btn:not(.item-list):before {
    /*20231222変更*/
    font-size: .9rem;
    top: calc(50% - .55rem);
    right: 1rem;
  }

  /*** 内部リンクボタン ***/
  a.internal-link-btn {
    font-size: 80%;
  }

  /*** モバイルメニュー ***/
  .mobile-menu-buttons .navi-menu-button .navi-menu-content {
    width: 290px;
  }

  /*** カウンター ***/
  .counter-wrap dl:not(.check)>dt {
    /*flex-direction: column;*/
    /* 縦並びに変更 */
    align-items: flex-start;
    /* 小さい画面では上寄せ */
    gap: .25em;
    /* 番号とテキストの間隔をなくす */
  }

  .counter-wrap dl:not(.check)>dt::before {
    flex-shrink: 1;
    /* 番号部分の縮小を許可 */
    width: 1.5em;
    /* 少し小さくしてバランス調整 */
    height: 1.5em;
    min-width: 1.5em;
    align-self: flex-start;
    /* 番号を左揃え */
  }

  .counter-wrap dl dd {
    margin-left: 0;
  }

  .counter-wrap.with-image dl:not(.check)>dt {
    flex-direction: column;
    /* 縦並びに変更 */
    gap: .25em 0;
    /* 番号とテキストの間隔をなくす */
  }

  /*** チェックリスト ***/
  ul.check>li {
    align-items: flex-start;
    /* 小さい画面では上寄せ */
    gap: .25em;
    /* 番号とテキストの間隔をなくす */
  }

  ul.check>li:before {
    width: 1.5em;
    /* 少し小さくしてバランス調整 */
    height: 1.5em;
    min-width: 1.5em;
    align-self: flex-start;
    /* 番号を左揃え */
  }
}

/*************************
** 印刷用のメディアクエリ
**************************/
@page {
  /*size: A4 portrait;*/
  size: A4;
  margin: 0;
}

@media print {
  * {
    margin: 0mm;
    padding: 0mm;
    color: #000;
    /* 印刷時のデフォルトのテキストカラーを指定 */
  }

  body {
    width: 210mm;
  }

  #print h2 {
    margin-bottom: 1em;
  }

  #print.print-seasonal h2 {
    font-size: 14pt;
  }

  #print p {
    margin-bottom: 1em;
    /*font-weight: bold;*/
    padding: .05em .5em;
    background-color: #ff9;
    color: #371f28;
  }

  .print-off,
  #print h2+p {
    display: none;
  }

  #print {
    /*top:0 !important;
 left:0 !important;*/
    width: 210mm;
    height: 296.5mm;
    /*page-break-after: always;*/
    box-sizing: border-box;
    padding: 10mm 10mm;
    font-size: 11pt;
  }

  #print .company-name-wrap {
    position: absolute;
    top: 0;
    right: 0;
    margin: 10mm 10mm;
    padding: 3mm;
    width: auto;
    line-height: 130%;
    font-size: 9pt;
    border: solid 0.3mm var(--shiraz);
    box-sizing: border-box;
    border-radius: 3mm;
  }

  #print .company-name-wrap .zip {
    margin-right: .5em;
  }

  #print .company-name-wrap .free-dial-mark {
    width: 1.5em;
    height: auto;
  }

  #print.print-seasonal .company-name-wrap {
    position: absolute;
    top: 0;
    right: 0;
    margin: 10mm 10mm;
    padding: 1mm 2mm;
    width: auto;
    line-height: 120%;
    font-size: 8pt;
    border: solid 0.3mm var(--shiraz);
    box-sizing: border-box;
    border-radius: 3mm;
  }

  #print .flex-container .flex-item {
    margin-bottom: .5em;
    margin-right: 0;
    margin-left: 0;
  }

  #print .flex-container .flex-item span {
    height: auto;
    margin: .2em .2em 0em 0em;
    padding: .2em .5em .2em .5em;
    border-radius: 1em;
    font-size: 10pt;
  }

  #print .flex-container .flex-item img+span {
    margin: .2em .2em 0em -1em;
    padding: .2em .5em .2em 1.1em;
  }

  #print.print-seasonal h2 {
    margin-bottom: 0em;
  }

  #print.print-seasonal .seasonalfoods dt,
  #print.print-seasonal .seasonalfoods dd {
    margin-bottom: 0em;
    font-size: 10pt;
  }

  #print.print-seasonal .flex-container .flex-item img {
    width: 8mm;
    height: auto;
  }

  #print.print-seasonal .flex-container .flex-item span {
    margin: .1em .1em 0em -1em;
    padding: .2em .5em .2em 1em;
    font-size: 8pt;
  }

  #print.print-seasonal .flex-container .flex-item {
    margin-bottom: .05em;
  }

  #print.print-seasonal p,
  #print.print-seasonal .osechi {
    display: none;
  }
}