@charset "UTF-8";

/*!
Template:storefront
Theme Name:   Storefront-child
Theme URI:    https://woocommerce.com/storefront/
Author:       Automattic
Author URI:   https://woocommerce.com/
Description:  Storefront is the perfect theme for your next WooCommerce project. Designed and developed by WooCommerce Core developers, it features a bespoke integration with WooCommerce itself plus many of the most popular customer facing WooCommerce extensions. There are several layout & color options to personalise your shop, multiple widget regions, a responsive design and much more. Developers will love its lean and extensible codebase making it a joy to customize and extend. Looking for a WooCommerce theme? Look no further!
Version:      3.5.8
Tested up to: 5.6.0
Requires PHP: 5.6.0
License:      GNU General Public License v2 or later
License URI:  https://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  storefront
Tags:         e-commerce, two-columns, left-sidebar, right-sidebar, custom-background, custom-colors, custom-header, custom-menu, featured-images, full-width-template, threaded-comments, accessibility-ready, rtl-language-support, footer-widgets, sticky-post, theme-options, editor-style

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

Storefront is based on Underscores https://underscores.me/, (C) 2012-2017 Automattic, Inc.

Resetting and rebuilding styles have been helped along thanks to the fine work of
Eric Meyer https://meyerweb.com/eric/tools/css/reset/index.html
along with Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/

All sizing (typography, layout, padding/margins, etc) are inspired by a modular scale that uses 1em as a base size with a 1.618 ratio.
You can read more about the calculator we use in our Sass here: https://github.com/modularscale/modularscale-sass

FontAwesome License: SIL Open Font License - http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=OFL
Images License: GNU General Public License v2 or later
*/

/*こちらは子テーマ用CSSです。以下にCSSを記入していきましょう。*/

/* ベース,リセット */

html body {
  font-family: "Sawarabi Gothic", sans-serif;
}

a:focus,
button:focus,
input:focus,
textarea:focus {
  outline: none;
}

/* -------- SP表示 -------- */

p + h2,
p + header h2,
p + h3,
p + h4,
ul + h2,
ul + header h2,
ul + h3,
ul + h4,
ol + h2,
ol + header h2,
ol + h3,
ol + h4,
table + h2,
table + header h2,
table + h3,
table + h4,
blockquote + h2,
blockquote + header h2,
blockquote + h3,
blockquote + h4,
form + h2,
form + header h2,
form + h3,
form + h4 {
  margin-top: 4vw;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0 0 1vw;
}

h1 {
  font-size: 5.8vw;
  line-height: 1.4;
}

h2 {
  font-size: 5.4vw;
}

.widget .widget-title,
.widget .widgettitle,
h3 {
  font-size: 4.8vw;
}

h4 {
  font-size: 4.4vw;
}

table,
ul,
ol,
p {
  font-size: 4.4vw;
}

p {
  margin: 0px 0 1em;
}

ul,
ol {
  margin: 0 0 1.41575em 2em;
}

p.has-background {
  padding: 4vw;
}

.saboxplugin-wrap .saboxplugin-desc ul,
.saboxplugin-wrap .saboxplugin-desc ol {
  width: auto;
  margin: 0 0 1.41575em 2em;
}

.saboxplugin-wrap .saboxplugin-desc li {
  text-align: left;
}

.wp-block-image,
.linkcard,
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content p,
.entry-content span,
.entry-content ul,
.entry-content hr {
  display: block;
  width: 100%;
}

.blocks-gallery-grid,
.wp-block-gallery {
  display: flex !important;
}

.wp-block-jetpack-tiled-gallery {
  width: 100%;
}

.entry-content {
  display: flex;
  flex-wrap: wrap;
}

.page-links {
  order: 1;
  margin: 0 auto;
  display: flex;
  align-items: center;
  white-space: nowrap;
}

.saboxplugin-wrap {
  order: 2;
}

#jp-relatedposts {
  order: 3;
}

form {
  margin-bottom: 0;
}

.whatsnew {
  width: 40px !important;
}

.site-header {
  padding: 1.6em 0 0 0;
  /* padding-top: 10px;
  padding-bottom: 1vw; */
  margin-bottom: 0 !important;
}

.entry-title {
  text-align: center;
  margin: 0.5407911001em;
  /* margin-bottom: 12px; */
}

.entry-header h1 {
  text-align: left;
  margin-left: 0;
}

.panel-first-child {
  margin-left: -3vw;
  margin-right: -3vw;
  margin-bottom: 0 !important;
}

.col-full {
  margin-left: 3vw;
  margin-right: 3vw;
}

.widget .widget-title,
.widget .widgettitle {
  padding: 0 3vw 1vw;
}

table td,
table th {
  padding: 0;
  /* padding: 1em 1.41575em; */
}
table thead th {
  padding: 0;
}

table:not(.has-background) tbody tr:nth-child(2n) td.active {
  background-color: #357ebd;
}
table:not(.has-background) tbody tr:nth-child(2n) td.active {
  background-color: #357ebd;
}

table:not(.has-background) tbody tr:nth-child(2n) td.in-range {
  background: #ebf4f8;
}

/* -------- TB表示 -------- */
@media (min-width: 569px) {
  .main-navigation li img,
  .main-navigation ul li,
  .main-navigation ul li a,
  .secondary-navigation ul li,
  .secondary-navigation ul li a {
    width: auto;
  }

  .main-navigation ul.menu,
  .main-navigation ul.nav-menu {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
  }

  .main-navigation ul.menu > li.menu-item-has-children > a::after,
  .main-navigation ul.menu > li.page_item_has_children > a::after,
  .main-navigation ul.nav-menu > li.menu-item-has-children > a::after,
  .main-navigation ul.nav-menu > li.page_item_has_children > a::after {
    margin-left: 0;
  }

  .saboxplugin-wrap .saboxplugin-gravatar {
    width: auto !important;
  }

  .saboxplugin-wrap .saboxplugin-authorname {
    margin: 0 !important;
    padding: 20px 0 0 20px !important;
  }

  .saboxplugin-wrap .saboxplugin-desc {
    margin: 0 !important;
    padding: 5px 20px !important;
  }

  .rpwe-alignleft {
    width: 70px;
  }

  h1 {
    font-size: 1.8rem;
  }

  h2 {
    font-size: 1.5rem;
  }

  .widget .widget-title,
  .widget .widgettitle,
  h3 {
    font-size: 1.41575rem;
  }

  h4 {
    font-size: 1.2rem;
  }

  table,
  ul,
  ol,
  p {
    font-size: 16px;
  }

  .col-full {
    margin-left: 2.617924em;
    margin-right: 2.617924em;
  }

  .panel-first-child {
    margin-left: -2.617924em;
    margin-right: -2.617924em;
  }

  .main-navigation ul.menu > li > a,
  .main-navigation ul.nav-menu > li > a {
    padding: 0;
    font-weight: 600;
  }

  .site-header {
    padding-bottom: 1em;
    margin-bottom: 0;
  }

  .main-navigation ul.menu > li > a::after {
    content: "";
    display: block;
    margin: 5px auto 0;
    position: absolute;
    border-radius: 8px;
    left: 0;
    bottom: -2px;
    height: 2px;
    background: #747474;
    opacity: 0;
    -webkit-transition: 0.25s ease-out;
    transition: 0.25s ease-out;
  }

  .main-navigation ul.menu li:hover > a::after {
    transform: translateY(-3px);
    opacity: 0.9;
  }

  .nav-menu .menu-item a {
    /* font-family: "Sawarabi Gothic", sans-serif; */
    font-family: "ヒラギノ角ゴ ProN W3", HiraKakuProN-W3, 游ゴシック,
      "Yu Gothic", メイリオ, Meiryo, Verdana, Helvetica, Arial, sans-serif;
    display: inline-block;
    position: relative;
    white-space: nowrap;
  }

  .nav-menu .menu-item a::after {
    content: "" !important;
    display: inline-block;
    height: 2px;
    position: absolute;
    bottom: -10px;
    left: 0;
    width: 100%;
    opacity: 0;
    transition: opacity 0.3s;
  }

  .nav-menu .menu-item a:hover {
    opacity: 1;
  }

  .main-navigation ul.menu li:hover ul.sub-menu {
    opacity: 0.98;
    transform: translateY(0px);
  }

  .main-navigation ul ul,
  .secondary-navigation ul ul {
    left: 0;
    opacity: 0;
    transition: opacity 0.3s;
  }

  .main-navigation ul.menu li ul.sub-menu li {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    background-color: #000;
    opacity: 0.98;
  }

  .main-navigation ul.menu li ul.sub-menu li a {
    color: #fff;
  }

  .main-navigation ul.menu li ul.sub-menu li a:hover {
    opacity: 0.8;
    /* color: #fff; */
  }

  .whatsnew img {
    margin-left: auto;
  }
}

/* -------- PC表示 -------- */
@media (min-width: 768px) {
  p + h2,
  p + header h2,
  p + h3,
  p + h4,
  ul + h2,
  ul + header h2,
  ul + h3,
  ul + h4,
  ol + h2,
  ol + header h2,
  ol + h3,
  ol + h4,
  table + h2,
  table + header h2,
  table + h3,
  table + h4,
  blockquote + h2,
  blockquote + header h2,
  blockquote + h3,
  blockquote + h4,
  form + h2,
  form + header h2,
  form + h3,
  form + h4 {
    margin-top: 0.8em;
  }

  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    margin: 0 0 0.5407911001em;
  }

  ul,
  ol {
    margin: 0 0 1.41575em 2em;
  }

  p.has-background {
    padding: 20px 32px;
  }

  .col-full {
    margin-left: auto;
    margin-right: auto;
  }

  .panel-first-child {
    margin-left: 0;
    margin-right: 0;
  }

  .widget .widget-title,
  .widget .widgettitle {
    padding: 0 0 1rem;
  }

  .main-navigation li img {
    height: 58px;
  }
}

/* -------- フォントサイズ調整 -------- */

/* -------- 表示切替用 -------- */
.is-pc {
  display: none !important;
}

.is-sp {
  display: block !important;
}

@media (min-width: 768px) {
  .is-pc {
    display: block !important;
  }

  .is-sp {
    display: none !important;
  }
}

/* -------- ボタンデザイン -------- */
.c-button a {
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  font-size: 1em;
  padding: 1em 2em;
  background: #8cc63f;
  color: #ffffff !important;
  border: 1px solid #8cc63f;
  border-width: 1px 0;
  -webkit-border-radius: 1.5em;
  -moz-border-radius: 1.5em;
  border-radius: 1.5em;
  text-shadow: 0 1px 0 rgba(0, 0, 0, 0.05);
}

@media (min-width: 768px) {
  .c-button a {
    width: 30% !important;
  }
}

/* -------- 岡島さんプロフィール -------- */
.writerBox {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin-bottom: 28px;
}

.writerBox-col-4 {
  flex: 0 0 100%;
  max-width: 100%;
}

.writerBox-col-8 {
  flex: 0 0 100%;
  max-width: 100%;
  text-align: center;
  margin-top: 5vw;
}

.writerBox-img img {
  margin: 0 auto;
}

.writerBox-text-s {
  font-size: 4vw;
  margin: 0 0 2vw;
}

.writerBox-text-m {
  font-size: 4.5vw;
  margin: 0 0 2vw;
}

.writerBox-text-l {
  font-size: 5vw;
  margin: 0 0 2vw;
}

@media (min-width: 569px) {
  .writerBox {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 28px;
    padding: 20px 40px;
  }

  .writerBox-col-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }

  .writerBox-col-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
    text-align: left;
    padding-left: 40px;
    margin-top: 0;
  }

  .writerBox-img img {
    margin: 0 auto 0 0;
  }

  .writerBox-text-s {
    font-size: 16px;
    margin: 0 0 1em;
  }

  .writerBox-text-m {
    font-size: 20px;
    margin: 0 0 1em;
  }

  .writerBox-text-l {
    font-size: 24px;
    margin: 0 0 1em;
  }
}

.site-header .site-branding {
  width: 100%;
}

.header-widget-region {
  width: 100%;
  float: right;
  padding: 16px 0;
  /* z-index: -1; */
}
.site-header .widget_search {
  /* float: right; */
  width: 100%;
  padding: 0;
}

.storefront-primary-navigation ul li {
  border-bottom: solid 1px #fffe01;
  padding: 11px 0 4px 0;
  text-align: center;
}

/* .storefront-primary-navigation ul li a {
  padding-bottom: 0.2em;
} */

.handheld-navigation .menu-item:last-child {
  margin-bottom: 30px;
}

.main-navigation .menu-toggle {
  border-radius: 50%;
  width: 50px;
  height: 50px;
  text-align: center;
  vertical-align: middle;
  margin: 0 auto;
  padding: 0;
  background-color: #fffe01;
  border: none;
  position: absolute;
  top: 10px;
  /* margin-top: 10px; */
  right: 3vw;
}
button.menu-toggle,
button.menu-toggle:hover {
  background-color: #fffe01;
}

.main-navigation p {
  position: absolute;
  font-size: 8px;
  top: 80%;
  left: 50%;
  transform: translate(-50%, -80%);
}

.main-navigation p.close {
  display: none;
}

.main-navigation.toggled p.open {
  display: none;
}

.main-navigation p.open {
  display: block;
}

.main-navigation.toggled p.close {
  display: block;
}

button.menu-toggle::before,
button.menu-toggle::after,
button.menu-toggle span::before {
  width: 25px;
}
button.menu-toggle::before {
  top: 30%;
  left: 50%;
  transform: translate(-50%, -30%);
}
button.menu-toggle span::before {
  top: 40%;
  left: 50%;
  transform: translate(-50%, -40%);
}
button.menu-toggle::after {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.toggled button.menu-toggle::before {
  top: 45%;
  left: 50%;
  transform: translate(-50%, -45%) rotate(45deg);
}

.toggled button.menu-toggle::after {
  top: 45%;
  left: 50%;
  transform: translate(-50%, -45%) rotate(-45deg);
}

@media (min-width: 768px) {
  .main-navigation ul.menu,
  .main-navigation ul.nav-menu {
    margin: 0 10px;
    grid-column-gap: 20px;
  }

  .storefront-primary-navigation {
    background-color: #fffe01;
  }
  /* ..site-header {
    border: ;
  } */
  .site-header .site-branding {
    width: 230px;
  }
  .header-widget-region {
    float: right;
    width: 30%;
    padding: 0;
  }
  /* .main-navigation ul.menu > li.menu-item-has-children > a::after,
  .main-navigation ul.menu > li.page_item_has_children > a::after,
  .main-navigation ul.nav-menu > li.menu-item-has-children > a::after,
  .main-navigation ul.nav-menu > li.page_item_has_children > a::after {
    content: none;
  } */
}

header .search-field,
header .search-field:focus {
  border-radius: 20px;
  border: solid 1.5px #727272;
  background-color: #fff;
  height: 40px;
}
.widget_search form:not(.wp-block-search)::before,
.widget_product_search form:not(.wp-block-search)::before {
  content: none;
  /* display: none; */
}
.widget_search form:not(.wp-block-search) input[type="text"],
.widget_search form:not(.wp-block-search) input[type="search"],
.widget_product_search form:not(.wp-block-search) input[type="text"],
.widget_product_search form:not(.wp-block-search) input[type="search"] {
  padding-left: 1em;
}

.search-form::after {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  line-height: 1;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  line-height: inherit;
  vertical-align: baseline;
  content: "\f002";
  position: absolute;
  font-size: 25px;
  color: #727272;
  top: 0;
  right: 0.8em;
}
/* -------- ヘッダー調整 -------- */
@media (min-width: 768px) {
  .site-header .site-branding {
    margin: 0 0 1.41575em;
    font-size: 1rem;
  }
  .site-header .site-branding h1 {
    margin: 0;
  }
}

/* -------- フッター調整 -------- */

footer .site-info a,
footer .site-info br {
  display: none;
}

.site-footer {
  padding-bottom: 1.617924em;
}

.site-info {
  padding: 0 0 1.617924em;
  display: inline-block;
  width: 50%;
  text-align: right;
  font-size: 4vw;
}
#colophon .footer-list {
}
.footer-sns {
  display: inline-block;
}
.footer-sns img:first-child {
  margin: 0 10px 0 0;
}
.footer-sns img {
  float: left;
  width: 40px;
  height: 40px;
}
.footer-nav {
  float: right;
  margin-top: 10px;
}
.footer-wrap {
  list-style-type: none;
  margin: 0;
}
.footer-item {
  float: left;
  margin-right: 20px;
}
.footer-item:last-child {
  margin: 0;
}
.footer-item a {
  font-weight: 600;
  text-decoration: none;
}

.footer-company {
  display: block;
  width: 100%;
  font-size: 4vw;
  text-align: center;
}

.footer-company a {
  display: inline-block;
  width: 120px;
  height: 24px;
}

.site-info {
  display: block;
  width: 100%;
  text-align: center;
  padding: 0 0 0.617924em;
}

.footer-copyright {
  float: right;
  margin-top: 20px;
}

@media (min-width: 569px) {
  .footer-sns {
    display: block;
  }
  .site-info {
    display: inline-block;
    width: 50%;
    text-align: right;
    padding: 0 0 1.617924em;
  }

  .footer-company {
    width: 50%;
    display: inline;
  }

  .site-info,
  .footer-company {
    font-size: 16px;
  }

  .footer-widgets {
    padding-top: 1.235801032em;
    margin-bottom: 1.235801032em;
  }

  footer .widget {
    margin: 0 0 1.706326em;
  }
}

/* -------- インスタfeed調整 -------- */

#sb_instagram {
  border-radius: 5px;
}

#sb_instagram .sb_instagram_header .sbi_header_img {
  background-image: url("/wp-content/uploads/2021/01/15171423/img_delokal_sns-icon.jpg");
  background-size: 50px 50px;
}

#sb_instagram .sbi_header_hashtag_icon {
  display: none;
}

/* -------- IE対応 -------- */

.wp-block-group,
.panel-layout,
.wp-block-columns {
  width: 100%;
}

/* -------- google map サイズ調整 -------- */
.responsive-map0 {
  margin: 0 0 1em;
}

.responsive-map0 > iframe {
  height: 50vw;
}

@media (min-width: 569px) {
  .responsive-map0 > iframe {
    max-width: 600px;
    height: 300px;
  }
}

/* -------- SNSボタン -------- */

.sns__container {
  display: flex;
  width: 100%;
  order: 3;
  line-height: 1;
  font-size: 6vw;
  margin-top: 4vw;
}

.sns__container a {
  width: 100%;
  text-align: center;
  color: #fff;
  border-radius: 8px;
  margin-left: 4px;
  padding: 1.8vw 0;
}

.sns__container a:first-child {
  margin-left: 0;
}

.sns__container a:hover {
  opacity: 0.6;
}

.sns__twitter {
  background: #55acee;
}

.sns__facebook {
  background: #3b5998;
}

.sns__pocket {
  background: #ef3f56;
}

.sns__line {
  background: #00b900;
  padding: 1vw 0 !important;
}

.sns__hatena {
  background: #00a5de;
}

.sns__line img {
  width: 8vw;
  height: auto;
  margin: 0 auto;
}

@media (min-width: 569px) {
  .sns__container {
    font-size: 22px;
    margin-top: 24px;
    justify-content: flex-end;
  }

  .sns__container a {
    max-width: 100px;
    padding: 6px 0;
  }

  .sns__line {
    padding: 3px 0 !important;
  }

  .sns__line img {
    width: 28px;
    height: auto;
    margin: 0 auto;
  }
}

/* -------- SNSボタン(jetpack) -------- */
.share-end,
.sd-content .share-customize-link,
.sharing-screen-reader-text,
div.sharedaddy h3.sd-title {
  display: none !important;
}

.sd-social-icon .sd-content ul li[class*="share-"] a.sd-button.share-custom {
  padding: 0 !important;
  top: 0 !important;
}

.jp-sharing-input-touch .sd-content ul li {
  padding: 0 !important;
}

.sd-sharing,
.sd-content,
.sd-content ul li {
  display: block;
  width: 100%;
}

.sd-content ul {
  display: flex;
  width: 100%;
}

.sd-content ul li {
  margin: 0 0 0 4px !important;
}

.sd-content ul li:first-child {
  margin: 0 !important;
}

div.sharedaddy,
#content div.sharedaddy,
#main div.sharedaddy {
  display: flex;
  width: 100%;
  order: 3;
  margin-top: 4vw;
}

.sd-social-icon .sd-content ul li[class*="share-"] a.sd-button {
  text-align: center;
  height: 11.6vw;
  margin-top: 0 !important;
}

.sd-social-icon .sd-content ul li[class*="share-"].share-twitter a.sd-button {
  background: #55acee !important;
}

.sd-social-icon .sd-content ul li[class*="share-"].share-facebook a.sd-button {
  background: #3b5998 !important;
}

.sd-social-icon
  .sd-content
  ul
  li[class*="share-"].share-custom-line
  a.sd-button {
  background: #00b900;
  padding: 1vw 0 !important;
}

body .sd-social-icon .sd-content li.share-custom a span {
  background-size: 8vw 8vw !important;
  width: 8vw !important;
  height: 8vw !important;
  margin: 1vw auto 0;
}

.sd-social-icon .sd-content ul li[class*="share-"] a.sd-button:before {
  font-size: 8vw !important;
}

.sd-social-icon .sd-content ul li[class*="share-"] a,
.sd-social-icon .sd-content ul li[class*="share-"] a:hover,
.sd-social-icon .sd-content ul li[class*="share-"] div.option a {
  width: 100% !important;
  border-radius: 8px !important;
  padding: 1.8vw 0 !important;
}

@media (min-width: 569px) {
  .sd-content ul {
    font-size: 22px;
    margin-top: 24px;
    justify-content: flex-end;
  }

  .sd-content ul li,
  .sd-social-icon .sd-content ul li[class*="share-"] a.sd-button {
    max-width: 100px;
    height: auto;
    padding: 6px 0;
  }

  .sd-social-icon
    .sd-content
    ul
    li[class*="share-"].share-custom-line
    a.sd-button {
    height: 38px;
    margin-top: 7px !important;
    padding: 3px 0 !important;
  }

  body .sd-social-icon .sd-content li.share-custom a span {
    background-size: 28px 28px !important;
    width: 28px !important;
    height: 28px !important;
    margin: 3px auto 0;
  }

  .sd-sharing {
    margin-left: auto;
    margin-bottom: 0 !important;
  }

  .sd-social-icon .sd-content ul li[class*="share-"] a.sd-button:before {
    font-size: 26px !important;
  }

  .sd-social-icon .sd-content ul li[class*="share-"] a,
  .sd-social-icon .sd-content ul li[class*="share-"] a:hover,
  .sd-social-icon .sd-content ul li[class*="share-"] div.option a {
    max-width: 100px !important;
    padding: 6px 0 !important;
  }
}

/* -------- menu -------- */
.menu-box img {
  height: 32px !important;
  margin: 0 auto;
}

.menu-title {
  /* font-family: "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO"; */
  font-weight: 700;
  white-space: nowrap;
}

.menu-title:hover {
  color: #333;
}

.liner-gray {
  border-bottom: solid 6px #ccc;
  border-radius: 4px;
}

.liner-magenta {
  border-bottom: solid 6px #ed1e79;
  border-radius: 4px;
}

.liner-blue {
  border-bottom: solid 6px #29abe2;
  border-radius: 4px;
}

.liner-green {
  border-bottom: solid 6px #8dc640;
  border-radius: 4px;
}

.liner-orange {
  border-bottom: solid 6px #f79420;
  border-radius: 4px;
}

.liner-pink {
  border-bottom: solid 6px #ffc9d9;
  border-radius: 4px;
}

/* -------- 表示操作 -------- */
.site-main nav.navigation {
  display: none !important;
}

/* -------- リンクカード -------- */
.lkc-card {
  font-size: 3vw;
  margin-bottom: 1em;
}

.lkc-content {
  overflow: hidden;
  border: solid 1px #eee;
  border-radius: 6px;
  padding: 1em;
}

.lkc-thumbnail {
  float: left;
  width: 30%;
  margin-right: 1em;
}

@media (min-width: 569px) {
  .lkc-card {
    font-size: 14px;
    margin-bottom: 16px;
  }

  .lkc-content {
    padding: 12px;
  }

  .lkc-thumbnail {
    width: auto;
    margin-right: 16px;
  }
}

/* -------- ページネーション -------- */
.page-links .post-page-numbers {
  display: inline-block;
  border: 1px solid #ccc;
  padding: 1rem;
  margin: 0.3rem;
}

.page-links .post-page-numbers.current {
  background-color: #eee;
}

/* -------- yahoo広告PC-SP切替用 -------- */
.ad-pc {
  display: none;
}

.ad-sp {
  display: block;
}

@media (min-width: 569px) {
  .ad-pc {
    display: block;
  }

  .ad-sp {
    display: none;
  }
}

/* -------- 投稿画面調整 -------- */
.editor-styles-wrapper .wp-block.rich-text {
  max-width: 840px !important;
}

.hentry .entry-content figure.wp-block-image,
.editor-styles-wrapper figure.wp-block-image {
  margin: 0 auto 1rem auto !important;
}

.hentry {
  margin-bottom: 0;
}

/* -------- パンくずリスト調整 -------- */
.bread-crumb {
  padding: 0.5em 0;
  margin: 0;
}
.bread-crumb li {
  font-size: 12px;
  margin: 0;
  color: #6190bf;
  list-style-type: none;
}

.bread-crumb a:link,
.bread-crumb a:visited,
.bread-crumb a:active {
  color: #6190bf;
  text-decoration: none;
}

/* -------- TOPタイル画像対応 -------- */
/* -------- SP表示 -------- */
.rpwe-block ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
  list-style: none !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
}

.rpwe-block li {
  position: relative;
  list-style-type: none;
  border-bottom: 1px solid #eee;
  width: 48%;
  padding: 2vw;
  margin-bottom: 4vw;
}

.rpwe-block li.past-event-overlay {
  background: rgba(0, 0, 0, 0.5);
}

.rpwe-block li.past-event-overlay::before {
  content: "開催終了";
  position: absolute;
  top: 50%;
  left: 50%;
  font-size: 24px;
  transform: translate(-50%, -50%);
  z-index: 1;
  background: white;
  padding: 8px 12px;
  opacity: 0.7;
}

@media (max-width: 767px) {
  .rpwe-block li.past-event-overlay::before {
    content: "開催終了";
    font-size: 14px;
  }
}

#secondary .rpwe-block li {
  width: 100%;
}

.rpwe-block li:not(.facility):nth-child(3n) {
  margin-right: 0;
}
.rpwe-block li.facility:nth-child(4n) {
  margin-right: 0;
}

.rpwe-block a {
  /* display: inline !important; */
  text-decoration: none;
}

.rpwe-block .rpwe-img {
  display: block;
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 75%;
}

.rpwe-block .rpwe-img .gallery img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1;
}

.rpwe-block h3 {
  background: none !important;
  clear: none;
  margin-bottom: 0 !important;
  margin-top: 0 !important;
  font-weight: 400;
  font-size: 3.8vw !important;
  line-height: 1.5em;
}

.rpwe-thumb {
  border: 1px solid #eee !important;
  box-shadow: none !important;
  margin: 2px 10px 2px 0 !important;
  padding: 3px !important;
}

.rpwe-summary {
  font-size: 14px;
}

.rpwe-time {
  color: #bbb;
  font-size: 11px;
}

.rpwe-comment {
  color: #bbb;
  font-size: 11px;
  padding-left: 5px;
}

.rpwe-alignleft {
  display: inline;
  float: left;
}

.rpwe-alignright {
  display: inline;
  float: right;
}

.rpwe-aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.rpwe-clearfix:before,
.rpwe-clearfix:after {
  content: "";
  display: table !important;
}

.rpwe-clearfix:after {
  clear: both;
}

.rpwe-clearfix {
  zoom: 1;
}

.categoryTag {
  display: flex;
  flex-wrap: wrap;
}

.categoryTag p {
  margin: 5px 1rem 5px 0;
  font-size: 14px;
  font-weight: bold;
}

.categoryTag .bus {
  color: #ed1e79;
}

.categoryTag .meiten {
  color: #29abe2;
}

.categoryTag .kosuke {
  color: #f7931e;
}

.categoryTag .sukusuku {
  color: #8cc63f;
}

.tags-links {
  display: none;
}

.whatsnew {
  width: 51px;
  height: 61px;
  position: absolute;
  right: 1rem;
  top: -3px;
}

.whatsnew img {
  width: 100%;
  border-radius: 0 !important;
}

.event-facility #secondary,
.event-facility .saboxplugin-wrap,
.event-facility .sns__container {
  display: none;
}

/* -------- TB表示 -------- */
@media (min-width: 480px) {
  .rpwe-block h3 {
    font-size: 2.4vw !important;
  }

  .rpwe-block ul {
    justify-content: flex-start;
  }

  .rpwe-block li {
    width: 47%;
    margin-right: 0;
  }
}

/* -------- PC表示 -------- */
@media (min-width: 768px) {
  .rpwe-block h3 {
    font-size: 18px !important;
  }

  .rpwe-block li {
    width: 32%;
    margin-right: 2%;
    margin-bottom: 10px;
    padding: 0 0 10px;
  }
  .rpwe-block li.facility {
    width: 20%;
  }
}
@media (min-width: 768px) {
  .recent-posts-extended {
    margin: 3.706325903em 0;
  }
  .right-sidebar .content-area-author {
    width: 73.9130434783%;
    float: left;
    margin-right: 4.347826087%;
  }
  .event-facility .content-area {
    width: 100%;
    margin-right: 0;
  }
}

.page-template-template-top .content-area,
.archive .content-area,
.category .content-area {
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
}

#rpwe_widget-2 .rpwe-block ul {
  list-style: none !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
  position: relative;
}

#rpwe_widget-2 .rpwe-block li {
  border-bottom: 1px solid #eee;
  margin-bottom: 10px;
  padding-bottom: 10px;
  list-style-type: none;
  margin-right: 0;
}

#rpwe_widget-2 .rpwe-block a {
  display: inline !important;
  /* text-decoration: none; */
}

#rpwe_widget-2 .rpwe-block h3 {
  background: none !important;
  clear: none;
  margin-bottom: 0 !important;
  margin-top: 0 !important;
  font-weight: 400;
  font-size: 12px !important;
  line-height: 1.5em;
  margin-right: 30px;
}

#rpwe_widget-2 .rpwe-thumb {
  border: 1px solid #eee !important;
  box-shadow: none !important;
  margin: 2px 10px 2px 0;
  padding: 3px !important;
}

#rpwe_widget-2 .rpwe-summary {
  font-size: 12px;
}

#rpwe_widget-2 .rpwe-time {
  color: #bbb;
  font-size: 11px;
}

#rpwe_widget-2 .rpwe-comment {
  color: #bbb;
  font-size: 11px;
  padding-left: 5px;
}

#rpwe_widget-2 .rpwe-alignleft {
  display: inline;
  float: left;
}

#rpwe_widget-2 .rpwe-alignright {
  display: inline;
  float: right;
}

#rpwe_widget-2 .rpwe-aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

#rpwe_widget-2 .rpwe-clearfix:before,
#rpwe_widget-2 .rpwe-clearfix:after {
  content: "";
  display: table !important;
}

#rpwe_widget-2 .rpwe-clearfix:after {
  clear: both;
}

#rpwe_widget-2 .rpwe-clearfix {
  zoom: 1;
}

#rpwe_widget-2 .whatsnew {
  position: absolute;
  right: 0;
}
#rpwe_widget-2 .whatsnew img {
  width: 30px;
}
#rpwe_widget-2 .categoryTag p {
  font-size: 10px;
  margin-bottom: 0;
}

@media (min-width: 768px) {
  #rpwe_widget-2 .rpwe-block li {
    width: 100%;
  }

  #rpwe_widget-2 .rpwe-block .rpwe-img {
    display: block;
    position: static;
    width: auto;
    height: auto;
    padding-bottom: 0;
  }

  #rpwe_widget-2 .rpwe-block .rpwe-img img {
    position: static;
    width: 30%;
    height: auto;
    object-fit: contain;
  }
}

.pagenation {
  text-align: center;
}
.pagenation .page-numbers {
  display: inline-block;
  border: 1px solid #333333;
  color: #333333;
  height: 40px;
  width: 40px;
  border-radius: 50%;
  line-height: 40px;
  margin-right: 0px;
  text-align: center;
}
.pagenation .current {
  background-color: #333333;
  color: #ffffff;
}
.pagenation .next.page-numbers,
.pagenation .prev.page-numbers,
.pagenation .dots.page-numbers {
  border: none;
  width: 13px;
}
/* -------- リンクカード -------- */
.blog-card {
  border: 1px solid #c7c7c7;
  border-radius: 10px;
  background-color: #f7f7f7;
  word-wrap: break-word;
  box-sizing: border-box;
  max-width: 100%;
  padding: 12px 10px;
  margin-bottom: 12px;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  box-shadow: 0 2px 2px 0 #c7c7c7;
}

.blog-card:hover {
  cursor: pointer;
  box-shadow: 0 5px 10px -5px rgba(0, 0, 0, 0.2);
  -moz-transform: translateY(-2px);
  -webkit-transform: translateY(-2px);
  transform: translateY(-2px);
}

.blog-card a {
  text-decoration: none;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.blog-card a:hover {
  text-decoration: none;
}

.blog-card-thumbnail {
  flex-basis: 20%;
  display: block;
}

.blog-card-thumbnail img {
  padding: 0;
  border-radius: 6px;
  max-width: 100%;
}

.blog-card-content {
  flex-basis: 80%;
  display: block;
  vertical-align: top;
  padding-left: 0.8em;
}

.blog-card-title {
  font-size: 16px;
  margin-bottom: 13px;
  font-weight: 600;
  line-height: 1.4;
  color: #333333;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  text-overflow: ellipsis;
  text-decoration-color: #333;
}

.hentry .entry-content .blog-card a {
  font-size: 12px;
  color: #6d6d6d;
  text-decoration: none;
}

.hentry .entry-content .blog-card .blog-card-title {
  text-decoration: underline;
}

.hentry .entry-content .blog-card .blog-card-title:link,
.hentry .entry-content .blog-card .blog-card-title:visited,
.hentry .entry-content .blog-card .blog-card-title:active {
  text-decoration: none;
}

.hentry .entry-content a .blog-card-excerpt {
  text-decoration: none;
}
.hentry .entry-content a:hover {
  text-decoration: none;
}

.blog-card .clear {
  clear: both;
}

@media screen and (max-width: 500px) {
  .blog-card-title {
    font-size: 3vw;
  }
  .blog-card-thumbnail {
    flex-basis: 30%;
  }
  .blog-card-content {
    flex-basis: 70%;
  }
  .blog-card-excerpt {
    font-size: 3vw;
  }
}
.blog-card-label {
  display: inline-block;
  position: absolute;
  background-color: #ffb36b;
  top: 0px;
  left: 0px;
  width: 70px;
  height: 25px;
  color: #fff;
  font-size: 0.8rem;
  font-weight: 700;
  text-align: center;
  line-height: 25px;
  transform-origin: 50% 50%;
  animation: animScale 3.5s ease-out;
}

#page_top {
  cursor: pointer;
  position: fixed;
  bottom: 30px;
  right: 20px;
  border: 2px solid #000;
  border-radius: 50%;
  background-color: #fff;
}
#page_top:hover {
  opacity: 0.8;
  text-decoration: none;
}

.cp_arrows [class*="cp_arrow"] {
  position: relative;
  display: inline-block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  vertical-align: middle;
  color: #333;
}
.cp_arrows [class*="cp_arrow"]:after,
.cp_arrows [class*="cp_arrow"]:before {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  content: "";
}
.cp_arrows [class*="cp_arrow"] {
  top: -0.1em;
  width: 10px;
  height: 12px;
  margin: 0.8em;
  border-width: 4px 4px 0 0;
  border-style: solid;
  border-radius: 0 2px 0 0;
}
.cp_arrows [class*="cp_arrow"]:before,
.cp_arrows [class*="cp_arrow"]:after {
  position: absolute;
  border-radius: 2px;
}
.cp_arrows [class*="cp_arrow"]:before {
  content: "";
  top: -3px;
  right: 0;
  width: 15px;
  height: 4px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transform-origin: right top;
  transform-origin: right top;
  -webkit-box-shadow: inset 0 0 0 32px;
  box-shadow: inset 0 0 0 24px;
}
.cp_arrows [class*="cp_arrow"]:after {
  content: "";
  top: -4px;
  left: -2px;
  width: 4px;
  height: 4px;
  -webkit-box-shadow: inset 0 0 0 32px, 16px 17px;
  box-shadow: inset 0 0 0 24px, 8px 9px;
}
.cp_arrows .cp_arrow_up {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

/* -------- Youtube埋め込み -------- */
.wp-block-embed {
  width: 100%;
}

/* 管理画面無駄なマージン削除 */
#adminmenu .wp-has-current-submenu .wp-submenu {
  margin: 0;
}

/* -------- Swiper -------- */
.swiper {
  width: 100%;
  /* height: 460px; */
  margin: 20px auto;
  overflow: visible;
  --swiper-pagination-bottom: -20px;
}

.swiper-wrapper .swiper-slide {
  width: 100%;
  height: fit-content;
  transform: scale(0.9);
  transition: transform 0.4s, opacity 0.4s;
  text-align: center;
  font-size: 18px;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}

.swiper-wrapper .swiper-slide:hover {
  opacity: 0.8;
}

.swiper-wrapper .swiper-slide.swiper-slide-active {
  transform: scale(1);
  z-index: 1;
}

.swiper-wrapper .swiper-slide img {
  display: block;
  width: 100%;
  object-fit: cover;
  aspect-ratio: 16 / 9;
}

.swiper-link {
  width: 100%;
  height: 100%;
}

.swiper-button-prev,
.swiper-button-next {
  cursor: pointer;
  width: 50px;
  height: 50px;
  border: 2px solid #000;
  border-radius: 50%;
  background-color: #fff;
  transition: opacity 0.2s;
}

.swiper-button-prev:hover,
.swiper-button-next:hover {
  opacity: 0.8;
}

.swiper-button-prev::after,
.swiper-button-next::after {
  content: none;
}

.swiper-button-prev::after,
.swiper-button-next::after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  border-top: 2px solid black;
  border-right: 2px solid black;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  left: calc(50% - 2px);
}
.swiper-button-prev::after {
  left: calc(50% + 2px);
  transform: translate(-50%, -50%) rotate(-135deg); /* 左向きの矢印 */
}

.swiper-pagination-bullet {
  width: 45px;
  height: 3px;
  border-radius: 6px;
  background-color: #c5c5ca;
  margin-right: 5px;
}
.swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #ca6a3f;
}

/* -------- 東急沿線イベント情報 -------- */
.cta-wrapper {
  text-align: center;
}

.cta-wrapper .title {
  font-size: 1.5rem;
  margin: 1em 0 0 0;
}

.cta-button {
  padding: 10px 0;
  margin-top: 10px;
  width: 40%;
  color: #fff;
  background: #ca6a3f;
  border: 1px solid #ca6a3f;
  font-size: 16px;
  font-weight: 600;
  display: inline-block;
  transition: all 0.3s;
  cursor: pointer;
}

.cta-button:hover {
  border: 1px solid #ca6a3f;
  background: #fff;
  color: #ca6a3f;
}

.event .wp-block-heading {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .event .wp-block-heading {
    text-align: left;
  }
}

.event-wrapper {
  margin-top: 2em;
}

#filter-area {
  display: flex;
  column-gap: 20px;
  row-gap: 12px;
  margin-top: 15px;
  margin-bottom: 24px;
}

.filter-wrapper {
  display: flex;
  flex-direction: column;
  width: 25%;
}

.filter-wrapper .select {
  font-size: 14px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: white;
  border: 1px solid #bbb;
  background: transparent;
  border-radius: 4px;
  padding: 0 1em;
  cursor: pointer;
  height: 40px;
}

.filter-wrapper input {
  font-size: 14px;
  height: 40px;
}

.filter-wrapper .select:not(.datepicker) {
  background-image: url("/wp-content/themes/storefront-child/img/arrow-down.png"); /* 矢印アイコンのパス */
  background-repeat: no-repeat;
  background-position: right 10px center; /* 位置の調整 */
  padding-right: 30px;
}

.filter-wrapper .select:focus {
  background-color: white;
  border-color: #cccccc;
  outline: none;
}

.filter-wrapper .input-wrapper {
  position: relative;
  width: 100%;
}

#eventDateRangePicker {
  width: 100%;
}

#clearDateRange {
  position: absolute;
  z-index: 1;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
}

.past-event-overlay {
  /* position: relative; */
}

.past-event-overlay::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(128, 128, 128, 0.5); /* 灰色の半透明オーバーレイ */
}

@media screen and (max-width: 767px) {
  .swiper.mySwiper {
    width: 100% !important;
  }
  #filter-area {
    flex-direction: row;
    flex-wrap: wrap;
  }
  .filter-wrapper {
    width: 47%;
  }

  .filter-wrapper .select {
    padding: 0.5em;
  }

  .cta-button {
    width: 80%;
  }
}
