@charset "UTF-8";
/*
Template: jstork19
Theme Name: stork19_custom
Theme URI:http://open-cage.com/stork19/
Version: 1.0.1
Author: opencage
Author URI: https://open-cage.com/
*/
/* -----------------------------------------------
  Mixins
--------------------------------------------------*/
html {
  font-size: 62.5%;
}

/*コンテンツ横幅*/
:root {
  --stk-wrap-width: 950px;
  --stk-wide-width: 950px;
  --stk-main-width: 720px;
}

/*フォーム*/
.field, input[type=color], input[type=date], input[type=datetime-local], input[type=datetime], input[type=email], input[type=month], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=time], input[type=url], input[type=week], select, textarea {
  background-color: #fafafa;
  border: 1px solid #e1ddcc;
  border-radius: 3px;
}

em {
  font-style: normal;
  font-weight: normal;
  font-size: 75%;
}

/*********************
GLOBAL STYLES
*********************/
@media only screen and (min-width: 981px) {
  #content:not(.lp-wrap) #inner-content {
    margin-top: 0;
    margin-bottom: 0;
  }
}
/*グローバルナビ*/
@media only screen and (min-width: 768px) {
  .ul__g_nav > .menu-item > a::after {
    content: none;
  }
  .ul__g_nav > .nav-menu-item > a::before {
    content: "";
    display: block;
    margin: auto;
    width: 40px;
    height: 40px;
    background-size: 40px;
    transition: 0.2s;
  }
  .ul__g_nav > .nav-menu-item > a:hover::before {
    transform: rotate(-10deg);
  }
  .ul__g_nav > .item-products > a::before {
    background-image: url(images/menu-tori.png);
  }
  .ul__g_nav > .item-himitsu > a::before {
    background-image: url(images/menu-himitsu.png);
  }
  .ul__g_nav > .item-guide > a::before {
    background-image: url(images/menu-guide.png);
  }
  .ul__g_nav > .item-news > a::before {
    background-image: url(images/menu-event.png);
  }
  .ul__g_nav > .item-contact > a::before {
    background-image: url(images/menu-mail.png);
  }
  /*会員・カートボタン*/
  .nav-menu-btn {
    margin: min(1rem, 0.7692307692vw);
  }
  .nav-menu-btn:last-child {
    margin-left: 0;
    margin-right: 0;
  }
  .ul__g_nav > .nav-menu-btn > a {
    display: flex;
    flex-flow: column;
    gap: min(1rem, 0.7692307692vw);
    padding: 1rem min(1.5rem, 1.1538461538vw);
    line-height: 1;
    color: #fff;
    background: var(--main-link-color);
    border-radius: 5px;
  }
  .ul__g_nav > .nav-menu-btn > a::before {
    font-family: var(--fa-style-family, "Font Awesome 6 Free");
    font-size: min(2.4rem, 1.8461538462vw);
  }
  .ul__g_nav > .btn-member > a::before {
    content: "\f007";
  }
  .ul__g_nav > .btn-cart > a::before {
    content: "\f07a";
  }
  /*電話番号*/
  .nav-menu-telephone {
    margin-left: 1em;
  }
  .nav-menu-telephone::before {
    content: "お電話でのご注文・お問い合わせ";
    font-size: min(1.2rem, 0.9230769231vw);
  }
  .nav-menu-telephone::after {
    content: "受付時間 8時～17時（水曜・日曜以外）";
    font-size: min(1rem, 0.7692307692vw);
    font-weight: normal;
  }
  .ul__g_nav > .nav-menu-telephone > a {
    padding: 0;
    font-size: min(2.6rem, 2vw);
    line-height: 1;
    color: var(--main-ttl-bg);
    pointer-events: none;
  }
  .ul__g_nav > .nav-menu-telephone > a::before {
    font-family: var(--fa-style-family, "Font Awesome 6 Free");
    font-size: min(2rem, 1.5384615385vw);
    content: "\f095";
    margin-right: 3px;
  }
}
/*ヘッダー下テキスト*/
.header-info__link {
  pointer-events: none;
}

/*サイドバー*/
@media all and (max-width: 767px) {
  .g_side {
    margin-top: 3rem;
  }
}
.g_side .widgettitle {
  font-size: 14px;
  font-weight: 700;
  margin-inline: 0 !important;
  margin-bottom: 10px;
}

.side-bnr {
  display: flex;
  flex-flow: column;
  gap: 10px;
}

.p-tel, .p-fax {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--main-ttl-bg);
  margin-bottom: 10px;
}

.p-tel::before,
.p-fax::before {
  font-family: var(--fa-style-family, "Font Awesome 6 Free");
  font-size: 0.8em;
  margin-right: 0.15em;
}

.p-tel::before {
  content: "\f095";
}

.p-tel::after {
  content: "受付時間 8時～17時（水曜・日曜以外）";
  font-size: 11px;
  font-weight: normal;
  font-feature-settings: "palt";
  color: initial;
  display: block;
}

.p-fax::before {
  content: "\f1ac";
}

/*販売店・取扱店（パターンで挿入しているエリア）*/
body:not(.home) .footer-information {
  border-top: 1px solid hsl(51, 16%, 84%);
}

/*フッターガイド*/
.footer-guide {
  font-size: 14px;
  background-color: var(--footer-bg);
}

.footer-guide .widgettitle {
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 10px;
}

.footer-guide ul li {
  list-style: disc inside;
  padding-left: 0.5em;
}

.footer-guide .inner {
  padding: 4%;
}

@media only screen and (min-width: 768px) {
  .footer-guide .inner {
    padding: 32px 35px;
  }
}
@media only screen and (min-width: 981px) {
  .content_flat .footer-guide .wrap {
    max-width: calc(70px + var(--stk-wrap-width));
  }
}
/*モバイル用フッター*/
@media all and (max-width: 767px) {
  #fixed-footer-menu::before {
    background-color: #600;
  }
  #fixed-footer-menu li {
    color: #fff;
  }
}
/* バッチを非表示（reCAPTCHA） */
/* .grecaptcha-badge { visibility: hidden; } */
/*body:not(.page-id-20):not(.page-id-4824):not(.page-id-6349) .grecaptcha-badge{
	display: none!important;
}
.grecaptcha-badge {
	bottom: 80px!important;
}*/
@media all and (min-width: 768px) {
  #top_carousel {
    margin-top: 10px;
  }
}

#top_carousel.slide_style-overlay .slick-slider,
#item_carousel.slide_style-overlay .slick-slider {
  background: transparent;
}
#top_carousel.slide_style-overlay .slick-slide img,
#item_carousel.slide_style-overlay .slick-slide img {
  margin-bottom: 0;
}
@media all and (min-width: 768px) {
  #top_carousel.slide_style-overlay .slick-slide,
  #item_carousel.slide_style-overlay .slick-slide {
    width: 720px;
    margin-inline: 5px;
    opacity: 1;
  }
}
@media all and (max-width: 767px) {
  #top_carousel.slide_style-overlay .slick-slide,
  #item_carousel.slide_style-overlay .slick-slide {
    width: 100vw;
  }
}
#top_carousel.slide_style-overlay .slider_caption,
#item_carousel.slide_style-overlay .slider_caption {
  display: none;
}
#top_carousel.slide_style-overlay .slick-dots,
#item_carousel.slide_style-overlay .slick-dots {
  position: relative;
  bottom: -20px;
  z-index: 1;
}
@media all and (max-width: 767px) {
  #top_carousel.slide_style-overlay .slick-dots,
  #item_carousel.slide_style-overlay .slick-dots {
    bottom: -10px;
  }
}
#top_carousel.slide_style-overlay .slick-dots li,
#item_carousel.slide_style-overlay .slick-dots li {
  width: 20px;
  height: 20px;
}
#top_carousel.slide_style-overlay .slick-dots li::before,
#item_carousel.slide_style-overlay .slick-dots li::before {
  content: none;
}
#top_carousel.slide_style-overlay .slick-dots button::before,
#item_carousel.slide_style-overlay .slick-dots button::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 10px;
  height: 10px;
  margin: auto;
  background: rgba(0, 0, 0, 0.75);
  border-radius: 1em;
}
#top_carousel.slide_style-overlay .slick-dots .slick-active button::before,
#item_carousel.slide_style-overlay .slick-dots .slick-active button::before {
  background: #af0b0d;
  opacity: 1;
}

@media all and (min-width: 768px) {
  .sanuki-meibutsu .stk_grids {
    padding-inline: 1.6rem;
  }
}

/* タイトル */
.page .entry-header {
  margin-bottom: 0;
}

.archive-title,
.entry-header .member-title,
.entry-header .cart-title,
.entry-header .page-title {
  font-size: 2.4rem;
  padding: 0 0 1rem;
  border-bottom: 2px solid #af0b0d;
  margin-bottom: 2rem;
}
.archive-title::before,
.entry-header .member-title::before,
.entry-header .cart-title::before,
.entry-header .page-title::before {
  content: none !important;
}

/* 見出し */
.h_bl_bg .entry-content h2:not([class*=is-style-style]):not(.has-background), .h_bl_bg .homeadd_wrap h2:not([class*=is-style-style]):not(.has-background), .h_bb_bg .entry-content h2:not([class*=is-style-style]):not(.has-background), .h_bb_bg .homeadd_wrap h2:not([class*=is-style-style]):not(.has-background) {
  background-color: hsl(49, 26%, 94%);
}

/* テーブル */
.stk-table-thdesign tr td:first-child,
th {
  background-color: hsl(49, 26%, 94%);
}

.entry-content th, .entry-content td {
  border-color: hsl(51, 16%, 84%);
}

/* 補足説明 */
.supplement.is-style-warning, .supplementwarning,
.is-style-supplement-.is-style-warning,
.is-style-supplement-warning {
  color: #600;
  background-color: #f7eaea;
  border-color: #c99;
}

/* dl（2列） */
.sideby {
  display: grid;
  grid-template-columns: 1fr 2fr;
  align-items: flex-start;
}

/* ローカルナビ */
.snk-local-navi {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  font-size: 90%;
  padding: 2rem 1.5rem;
  background: hsl(49, 26%, 94%);
  border-radius: 3px;
}
@media all and (max-width: 767px) {
  .snk-local-navi {
    flex-flow: column;
  }
}
.snk-local-navi li {
  margin: 0;
}
.snk-local-navi li a {
  color: #000;
  text-decoration: none;
}
.snk-local-navi li a:hover {
  color: #d33;
}

/* --------------------------------------------------------------------------
フォーム共通
-------------------------------------------------------------------------- */
#main input[type=text], #main input[type=password], #main input[type=datetime], #main input[type=datetime-local], #main input[type=date], #main input[type=month], #main input[type=time], #main input[type=week], #main input[type=number], #main input[type=email], #main input[type=url], #main input[type=search], #main input[type=tel], #main input[type=color], #main select, #main textarea, #main .field {
  width: 100%;
  font-family: var(--stk-base-font-family);
  font-size: 16px;
}

#main select,
#main .customer_form input[type=password] {
  width: auto !important;
  min-width: 15rem;
  display: inline-block;
}

label[for*=custom_member] {
  display: block;
}

#main input[type=text]#name1,
#main input[type=text]#name2,
#main input[type=text]#name3,
#main input[type=text]#name4,
#main input[type=text]#zipcode {
  display: inline-block;
}

#main input[type=text]#name1,
#main input[type=text]#name2,
#main input[type=text]#name3,
#main input[type=text]#name4 {
  max-width: 100%;
}

#main select#member_pref {
  width: 15rem;
}

#main input[type=text]#tel,
#main input[type=text]#fax {
  width: 25rem;
}

.entry-content table #zipcode {
  width: 15rem;
  float: left;
  margin-right: 1rem;
}

label {
  cursor: pointer;
}

button,
input[type=button],
input[type=submit],
.send input[type=button],
a.redownload_button,
a.back_to_top_button,
#escott-token-dialog input[type=button],
.back-or-confirm-container .ui.button,
#wc_confirm .ui.button,
#wc_confirm .ui.basic.buttons .button {
  display: inline-block;
  background: #cfcfcf;
  color: #3E3E3E;
  font-weight: bold;
  border: none;
  border-radius: 3px;
  text-decoration: none;
  transition: 0.3s;
}

button:hover,
input[type=button]:hover,
input[type=submit]:hover,
a.redownload_button:hover,
a.back_to_top_button:hover {
  background-color: #c0c0c0;
  color: #3E3E3E;
}

.send {
  text-align: center;
}

.submit input[type=submit],
.submit input[type=button],
.send input[type=submit],
.send input[type=button] {
  min-width: 13rem;
  padding: 1.5rem;
}
.submit:not(.delete) input[type=submit]:not([class*=back_]),
.send:not(.delete) input[type=submit]:not([class*=back_]) {
  background-color: var(--main-link-color);
  color: #fff;
}
.submit:not(.delete) input[type=submit]:not([class*=back_]):hover,
.send:not(.delete) input[type=submit]:not([class*=back_]):hover {
  background-color: var(--main-link-color-hover);
  color: #fff;
}

/* --------------------------------------------------------------------------
会員フォーム
-------------------------------------------------------------------------- */
.customer_form tbody th,
.wpcf7-form tbody th {
  width: 30%;
}
.customer_form tbody td,
.wpcf7-form tbody td {
  width: 70%;
}
.customer_form tr.inp1 td,
.wpcf7-form tr.inp1 td {
  width: auto;
}
.customer_form em,
.wpcf7-form em {
  font-style: normal;
  font-size: 1.2rem;
  color: #dd0000;
  border: none;
}

/* --------------------------------------------------------------------------
カート
 -------------------------------------------------------------------------- */
@media all and (max-width: 767px) {
  .history-area,
  .tscroll {
    overflow: auto;
    display: inherit !important;
    -webkit-overflow-scrolling: touch;
    margin-bottom: 2em;
  }
  .history-area::before,
  .tscroll::before {
    content: "※この表は横にスクロールできます。";
    position: sticky;
    top: 0;
    left: 0;
    font-size: 90%;
  }
  .history-area table,
  .tscroll table {
    white-space: nowrap;
    width: var(--stk-main-width);
  }
}
.history-area table .cartrownum,
.history-area table .num,
.tscroll table .cartrownum,
.tscroll table .num {
  text-align: center;
}
.history-area table .thumbnail,
.tscroll table .thumbnail {
  text-align: center;
}
.history-area table .quantity,
.tscroll table .quantity {
  width: 5rem;
}

/* --------------------------------------------------------------------------
ログイン
-------------------------------------------------------------------------- */
.loginbox {
  background: hsl(49, 26%, 94%);
  border: 1px solid hsl(51, 16%, 84%);
  padding: 1.5rem;
}
.loginbox #loginform label {
  display: inline-block;
  margin-bottom: 0.5rem;
}
.loginbox #loginform input {
  border-color: hsl(51, 16%, 84%);
  margin-bottom: 1rem;
}

/* --------------------------------------------------------------------------
カレンダー
-------------------------------------------------------------------------- */
.ucart_calendar_body {
  font-size: 90%;
  line-height: 1.5;
}
.ucart_calendar_body table {
  width: 100%;
  background: #fff;
  border: 1px solid #ccc;
  border-collapse: collapse;
}
.ucart_calendar_body th {
  color: #fff;
  background-color: var(--main-ttl-bg);
  border: 1px solid #ccc;
  text-align: center;
}
.ucart_calendar_body td {
  border: 1px solid #ccc;
  text-align: center;
}
.ucart_calendar_body .next-month {
  margin: 10px 0;
}
.ucart_calendar_body .businessday {
  color: #262626;
  background-color: #fff3ce;
}

.item__name {
  font-size: 1.8rem;
  margin-block: 0 1rem;
}
.item__code {
  font-size: 1.2rem;
}
.item__status {
  margin-block: 3rem;
}
.item__status .skuDisp {
  font-size: 1.6rem;
  font-weight: bold;
  margin-block: 3rem 0;
}
.item__status dl {
  display: grid;
  grid-template-columns: 1fr 1.25fr;
  align-items: flex-end;
}
.item__status dt, .item__status dd {
  margin: 0;
  padding-block: 0.9rem;
  border-bottom: 1px solid #ddd;
}
.item__status dt span, .item__status dt em, .item__status dd span, .item__status dd em {
  font-size: 1rem;
  font-weight: normal;
  font-style: normal;
  color: #000;
}
.item__status dd {
  text-align: right;
}
.item__field_price {
  font-size: 1.8rem;
  font-weight: bold;
  color: #af0b0d;
}
.item__action {
  text-align: right;
}
.item__action .skuquantity {
  display: inline-block;
  max-width: 10rem;
  margin-left: 0.5rem;
}
.item__action .sku-btn-wrap {
  position: relative;
  margin-top: 2rem;
}
.item__action .skubutton {
  width: 100%;
  color: #fff;
  font-weight: bold;
  padding: 1.5rem;
  background: linear-gradient(-45deg, #af0b0d 0%, #d33 100%);
  transition: 0.3s;
}
@media all and (min-width: 768px) {
  .item__action .skubutton:hover {
    color: #fff;
    background: #d33;
  }
}
.item__image {
  margin-bottom: 2rem;
}
.item__subimage {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 0.5rem;
}

.comment, .pingback {
  border: 1px solid rgba(0, 0, 0, 0.1);
}

.item__field_custom {
  margin-bottom: 0;
}

.limited-price {
  font-weight: bold;
  color: #dd0000;
}

/* 問い合わせフォーム */
.wpcf7-form select {
  width: auto !important;
  max-width: initial !important;
  padding: 0 3.5% 0 2% !important;
}

.wpcf7-form input[type=submit] {
  width: 300px;
  max-width: initial !important;
}

.wpcf7-list-item,
.wpcf7-checkbox > span {
  display: block;
}

.wpcf7-form-control-wrap.acceptance-901,
.wpcf7-form-control-wrap.acceptance-901 .wpcf7-list-item {
  width: 100%;
  display: block;
}

.wpcf7-form-control-wrap.acceptance-901 label {
  padding: 0.8em;
  margin: auto;
  border: 1px dashed #8f2222;
  display: flex;
  font-size: 0.93em;
  color: #8f2222;
  text-align: left;
  width: 98%;
  max-width: 610px;
  line-height: 1.3;
}

.wpcf7-form-control-wrap.acceptance-901 label:hover {
  background: lightyellow;
  cursor: pointer;
}

.wpcf7-form-control-wrap.acceptance-901 label input {
  margin-right: 8px;
  transform: translateY(3px) scale(1.2);
}

.wpcf7-radio label,
.wpcf7-radio > span {
  display: block;
}

span.wpcf7-list-item {
  margin-left: 0;
}

div.wpcf7-mail-sent-ok {
  background: #398f14;
  color: #fff;
  margin: 1em auto;
  max-width: 690px;
}

/* 問い合わせフォームスマホ用CSS */
@media all and (max-width: 767px) {
  .entry-content table.contact_form,
  .entry-content table.contact_form tr,
  .entry-content table.contact_form th,
  .entry-content table.contact_form td {
    border: none;
    text-align: left;
    background: none;
    padding: 0;
  }
  .entry-content table.contact_form th,
  .entry-content table.contact_form td {
    display: block;
  }
  .entry-content table.contact_form td {
    margin-bottom: 1em;
  }
  #main .entry-content table.contact_form textarea {
    width: auto;
  }
}