@charset "UTF-8";
/*! =======================================
このCSSファイルはSassから生成されていますので、
直接編集しないようご注意ください
※※※※※※※※※※※※※※※※※※※※※※※※
========================================= */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Shippori+Mincho+B1:wght@500;600;700;800&display=swap");
:root {
  --of-color-primary: #532C2F;
  --of-color-primary-rgb: 83,44,47;
  --of-color-pink: #F09A83;
  --of-color-green: #03703E;
  --of-color-d-green: #004100;
  --of-color-beige: #ffffbe;
  --of-color-l-brown: #B4A3A4;
  --of-color-gray: #CBCCCC;
  --fontfamily-serif: "Noto Sans JP", sans-serif;
  --fontfamily-mincho: "Shippori Mincho B1", serif;
  --fontfamily-google-icon: "Material Symbols Outlined";
  --fontfamily-mincho-weight: 700;
  --of-width--article-narrow: 950px;
  --of-width--side-navi: 0px;
}
@media (min-width: 1300px) {
  :root {
    --of-width--side-navi: 280px;
  }
}

/*! =======================================
このCSSファイルはSassから生成されていますので、
直接編集しないようご注意ください
※※※※※※※※※※※※※※※※※※※※※※※※
========================================= */
/*! =======================================
このCSSファイルはSassから生成されていますので、
直接編集しないようご注意ください
※※※※※※※※※※※※※※※※※※※※※※※※
========================================= */
.font-mincho {
  font-family: var(--fontfamily-mincho);
  font-weight: var(--fontfamily-mincho-weight);
}

.oc-leaf-title {
  margin: 2rem 0;
  padding-left: calc(37px + 1rem);
  font-family: var(--fontfamily-mincho);
  font-weight: var(--fontfamily-mincho-weight);
  color: var(--of-color-green);
}
.oc-leaf-title::before {
  margin-left: calc(-37px - 1rem);
  margin-right: 1rem;
  vertical-align: -0.1rem;
  content: "";
  width: 8.6046511628vw;
  height: 6.7441860465vw;
  background: url(../images/title_leaf_l.png) no-repeat left top;
  background-size: contain;
  display: inline-block;
}
@media (min-width: 600px) {
  .oc-leaf-title::before {
    width: 37px;
    height: 29px;
  }
}
.oc-leaf-title::before {
  background-image: url(../images/title_leaf_l.png);
}

.oc-button, .oc-arb-button {
  text-align: center;
  margin-bottom: 1rem;
}
.oc-button a, .oc-arb-button a {
  display: inline-block;
  color: var(--of-color-primary);
  text-decoration: none;
  position: relative;
  border: 1px solid var(--of-color-primary);
  border-radius: 5rem;
  background-color: var(--ark-color--bg);
  padding: 0.5rem 2rem;
  font-family: var(--fontfamily-mincho);
  font-weight: var(--fontfamily-mincho-weight);
}
.oc-button a:hover span, .oc-arb-button a:hover span {
  opacity: 0.7;
}

.oc-arb-button a {
  min-width: 280px;
  padding: 0.5rem 3.5rem 0.5rem 3rem;
}
.oc-arb-button a::before, .oc-arb-button a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -1em;
  background-color: var(--of-color-primary);
  transition: 0.5s;
}
.oc-arb-button a::before {
  transform: translateY(calc(-50% - 0.2rem)) rotate(45deg);
  width: 0.5rem;
  height: 1px;
}
.oc-arb-button a::after {
  transform: translateY(-50%);
  width: 2.2rem;
  height: 1px;
}
.oc-arb-button a:hover::before, .oc-arb-button a:hover::after {
  right: -2em;
}
.oc-arb-button a:hover::after {
  width: 3.2rem;
}

.wp-block-columns.--gap-none {
  --wp-column-gap: 0;
}

.wp-block-columns.--gap-xsmall {
  --wp-column-gap: 0.5rem;
}

.wp-block-columns.--gap-small {
  --wp-column-gap: 1rem;
}

.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
  background-color: #fef8f7;
}

/*! =======================================
このCSSファイルはSassから生成されていますので、
直接編集しないようご注意ください
※※※※※※※※※※※※※※※※※※※※※※※※
========================================= */
.ol-frame {
  display: block;
}
@media (min-width: 1300px) {
  .ol-frame {
    display: grid;
    grid-template-columns: var(--of-width--side-navi) minmax(calc(1300px - var(--of-width--side-navi)), 1fr);
    min-height: 100vh;
  }
}

.ol-side {
  display: none;
  position: sticky;
  top: 0;
  align-self: start;
  padding-top: 2rem;
  z-index: 10;
}
@media (min-width: 1300px) {
  .ol-side {
    display: block;
  }
}
.ol-side a:hover img {
  filter: brightness(1.2);
}
.ol-side .ol-side__logo {
  padding-bottom: 2rem;
  text-align: center;
}
.ol-side .ol-side__contentwrap {
  position: relative;
  z-index: 10;
  background-color: var(--ark-color--bg);
}
.ol-side .ol-side__banner {
  padding: 1.5rem 2rem;
}
.ol-side .ol-side__banner a {
  display: inline-block;
  margin-top: 0.5rem;
}
.ol-side .ol-side__sns {
  padding: 0 2.5rem;
}
.ol-side .ol-side__navi ul {
  list-style-type: none;
  padding: 0;
  background-color: var(--ark-color--bg);
}
.ol-side .ol-side__navi ul li {
  position: relative;
}
.ol-side .ol-side__navi ul li a {
  display: inline-block;
  color: var(--of-color-primary);
  text-decoration: none;
  width: 100%;
  padding-left: 2rem;
  padding-right: 0.5rem;
  line-height: 2.7;
  font-size: 0.95rem;
  font-family: var(--fontfamily-mincho);
  font-weight: var(--fontfamily-mincho-weight);
}
.ol-side .ol-side__navi ul li a:hover {
  filter: brightness(1.7);
}
.ol-side .ol-side__navi ul > li.menu-item-has-children {
  overflow: hidden;
}
.ol-side .ol-side__navi ul > li.menu-item-has-children > a::after {
  content: "expand_circle_right";
  position: absolute;
  right: 1rem;
  font-family: var(--fontfamily-google-icon);
  font-variation-settings: "FILL" 1, "wght" 700, "GRAD" 0, "opsz" 24;
  vertical-align: -0.15rem;
  margin-right: 0.5rem;
  transition: right 0.5s 0s ease;
}
.ol-side .ol-side__navi ul > li.menu-item-has-children ul {
  position: absolute;
  top: 0;
  left: var(--of-width--side-navi);
  z-index: 20;
  opacity: 0;
  transition: opacity 0.5s 0s ease;
}
.ol-side .ol-side__navi ul > li.menu-item-has-children ul > li {
  background-color: var(--of-color-primary);
  transition: filter 0.5s 0s ease;
}
.ol-side .ol-side__navi ul > li.menu-item-has-children ul > li:hover {
  filter: brightness(1.7);
}
.ol-side .ol-side__navi ul > li.menu-item-has-children ul a {
  width: auto;
  padding-right: 2rem;
  white-space: nowrap;
  color: var(--ark-color--bg);
}
.ol-side .ol-side__navi ul > li.menu-item-has-children:hover {
  overflow: visible;
}
.ol-side .ol-side__navi ul > li.menu-item-has-children:hover > a::after {
  right: 0;
}
.ol-side .ol-side__navi ul > li.menu-item-has-children:hover ul {
  opacity: 1;
}

.ol-content__top .p-topArea__body {
  padding: 1rem;
  color: var(--of-color-primary);
  letter-spacing: 0.2rem;
}
.ol-content__top .p-topArea__title {
  text-align: center;
}

.ol-main {
  z-index: 0;
  background: url(../images/back_sumi.jpg) repeat top left;
}

.ol-gridbox {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
  margin-bottom: 2rem;
}
.ol-gridbox > div {
  position: relative;
}
@media (min-width: 980px) {
  .ol-gridbox {
    gap: 2rem;
  }
  .ol-gridbox.columns-1fr1fr {
    grid-template-columns: 1fr 1fr;
  }
  .ol-gridbox.columns-2fr1fr {
    grid-template-columns: 2fr 1fr;
  }
  .ol-gridbox.columns-3fr1fr {
    grid-template-columns: 3fr 1fr;
  }
  .ol-gridbox.columns-1fr2fr {
    grid-template-columns: 1fr 2fr;
  }
  .ol-gridbox.columns-1fr3fr {
    grid-template-columns: 1fr 3fr;
  }
  .ol-gridbox.columns-3fr2fr {
    grid-template-columns: 3fr 2fr;
  }
  .ol-gridbox.columns-2fr3fr {
    grid-template-columns: 2fr 3fr;
  }
}

.ol-footinfo {
  position: relative;
  z-index: 10;
  background: url(../images/back_sumi.jpg) repeat top left;
  padding: 3rem 0;
}
.ol-footinfo .ol-footinfo__links {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.7rem 1.5rem;
  margin-bottom: 3rem;
}
@media (min-width: 600px) {
  .ol-footinfo .ol-footinfo__links {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 980px) {
  .ol-footinfo .ol-footinfo__links {
    grid-template-columns: repeat(3, 1fr);
  }
}
.ol-footinfo .ol-footinfo__links a {
  display: inline-block;
  color: var(--of-color-primary);
  text-decoration: none;
}
.ol-footinfo .ol-footinfo__links a:hover {
  filter: brightness(1.3);
}
.ol-footinfo .ol-footinfo__contact {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 980px) {
  .ol-footinfo .ol-footinfo__contact {
    grid-template-columns: 1fr 1.3fr 1.4fr;
  }
}
.ol-footinfo .ol-footinfo__contact div:nth-child(n+2) {
  text-align: center;
}
.ol-footinfo .ol-footinfo__contact img {
  width: 100%;
  max-width: 32rem;
}

.l-footer .l-footer__inner {
  font-family: var(--fontfamily-mincho);
  font-weight: var(--fontfamily-mincho-weight);
}
.l-footer .l-footer__widgets .l-container {
  gap: 4rem;
}
.l-footer .l-footer__widgets .w-footer.-widget1 {
  flex-basis: 40%;
  text-align: center;
}
.l-footer .l-footer__widgets .w-footer.-widget1 .widget_text {
  margin-top: 1rem;
}
.l-footer .l-footer__widgets .w-footer.-widget2 {
  flex-basis: 60%;
  margin: 0;
  padding-top: 1.5rem;
}
.l-footer .l-footer__widgets .w-footer .w-footer__logo {
  max-width: 330px;
  margin: 0 auto;
}
.l-footer .l-footer__widgets .w-footer .oc-snsbtn {
  max-width: 200px;
  margin: 0 auto;
}

.ol-sitemap a {
  display: block;
  text-decoration: none;
  font-size: 0.85rem;
}
.ol-sitemap a span {
  display: inline-block;
  color: var(--of-color-l-brown);
  margin-right: 0.5rem;
}
.ol-sitemap a.open_in_new::after {
  content: "open_in_new";
  font-family: var(--fontfamily-google-icon);
  font-variation-settings: "FILL" 0, "wght" 200, "GRAD" 0, "opsz" 24;
  margin-left: 0.2rem;
  vertical-align: bottom;
}
.ol-sitemap .ol-sitemap__main {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}
@media (min-width: 600px) {
  .ol-sitemap .ol-sitemap__main {
    grid-template-columns: repeat(3, 1fr);
  }
}
.ol-sitemap .ol-sitemap__unit {
  margin-bottom: 1rem;
}

/*! =======================================
このCSSファイルはSassから生成されていますので、
直接編集しないようご注意ください
※※※※※※※※※※※※※※※※※※※※※※※※
========================================= */
.oc-morebtn {
  position: relative;
  display: block;
  text-align: right;
}
.oc-morebtn span {
  display: inline-block;
  border-bottom: 1px solid var(--of-color-primary);
  margin-right: 0.15rem;
  padding-right: 20%;
  line-height: 2;
}
.oc-morebtn span::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0.3rem;
  transform: translateY(-50%) rotate(45deg);
  width: 1rem;
  height: 1px;
  background-color: var(--of-color-primary);
}

.oc-snsbtn {
  display: flex;
  justify-content: flex-start;
  list-style: none;
  padding: 0;
}
.oc-snsbtn li {
  flex-grow: 1;
  text-align: center;
}
.oc-snsbtn a {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  background-color: var(--of-color-primary);
  border-radius: 0.3rem;
  padding: 0.1rem;
}
.oc-snsbtn a:hover {
  filter: brightness(1.7);
}

.oc-scroll, .oc-scrolldown, .oc-scrolltop {
  position: relative;
  display: block;
  z-index: 1000;
  overflow: hidden;
  width: 5.5rem;
  height: 5.5rem;
}
.oc-scroll::after, .oc-scrolldown::after, .oc-scrolltop::after {
  content: "";
  position: absolute;
  z-index: 1001;
  left: 0;
  display: block;
  width: 5.5rem;
  height: 5.5rem;
  background-color: var(--of-color-pink);
  border-radius: 50%;
}
.oc-scroll .oc-scroll__text, .oc-scrolldown .oc-scroll__text, .oc-scrolltop .oc-scroll__text {
  position: absolute;
  width: 100%;
  text-align: center;
  font-size: 0.85rem;
  font-family: var(--fontfamily-mincho);
  line-height: 1;
  text-transform: uppercase;
}
.oc-scroll .oc-scroll__bar, .oc-scrolldown .oc-scroll__bar, .oc-scrolltop .oc-scroll__bar {
  position: absolute;
  z-index: 1002;
  left: 51%;
  transform: translateX(-50%);
}
.oc-scroll .oc-scroll__bar::after, .oc-scrolldown .oc-scroll__bar::after, .oc-scrolltop .oc-scroll__bar::after {
  content: "";
  position: absolute;
  left: 0;
  width: 0.05rem;
  height: 2.2rem;
  background: var(--of-color-primary);
}
.oc-scroll .oc-scroll__arrow, .oc-scrolldown .oc-scroll__arrow, .oc-scrolltop .oc-scroll__arrow {
  position: absolute;
  z-index: 1003;
  left: 52%;
  transform: translateX(-50%) rotate(45deg);
  width: 0.6rem;
  height: 0.6rem;
  border: 0.1rem solid var(--of-color-primary);
  border-top: none;
  border-left: none;
  transition: transform 0.2s, top 0.5s 0.2s;
}

.oc-scrolltop {
  background-color: transparent;
  border-radius: 0;
}
@media (min-width: 600px) {
  .oc-scrolltop {
    background-color: #fff;
    border-radius: 50%;
  }
}
.oc-scrolltop::after {
  top: 1.6rem;
}
.oc-scrolltop .oc-scroll__text {
  bottom: 2rem;
  color: #FFF;
  z-index: 1002;
}
@media (min-width: 600px) {
  .oc-scrolltop .oc-scroll__text {
    bottom: 1.3rem;
  }
}
.oc-scrolltop .oc-scroll__bar {
  top: 0.5rem;
}
.oc-scrolltop .oc-scroll__bar::after {
  height: 1.8rem;
}
@media (min-width: 600px) {
  .oc-scrolltop .oc-scroll__bar::after {
    height: 2.2rem;
  }
}
.oc-scrolltop .oc-scroll__arrow {
  top: 2.1rem;
}
@media (min-width: 600px) {
  .oc-scrolltop:hover .oc-scroll__arrow {
    transform: translateX(-50%) rotate(225deg);
    top: 0.5rem;
  }
}
@media (max-width: 599px) {
  .oc-scrolltop .oc-scroll__arrow {
    transform: translateX(-50%) rotate(225deg);
    top: 0.5rem;
  }
}

.oc-scrolldown {
  left: 50%;
  background-color: #fff;
  border-radius: 50%;
  transform: translateX(-50%);
}
.oc-scrolldown::after {
  top: 3.6rem;
}
.oc-scrolldown .oc-scroll__text {
  top: 1.5rem;
  color: var(--of-color-primary);
}
.oc-scrolldown .oc-scroll__bar {
  top: 0.8rem;
}
.oc-scrolldown .oc-scroll__bar::before {
  content: "";
  position: absolute;
  left: -0.15rem;
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 50%;
  background: var(--of-color-primary);
  animation: circlemove 3s ease-in-out infinite, cirlemovehide 3s ease-out infinite;
}
.oc-scrolldown .oc-scroll__bar::after {
  top: 2rem;
}
.oc-scrolldown .oc-scroll__arrow {
  top: 4.3rem;
}

@keyframes circlemove {
  0% {
    top: 1.8rem;
  }
  100% {
    top: 3.8rem;
  }
}
@keyframes cirlemovehide {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  80% {
    opacity: 0.9;
  }
  100% {
    opacity: 0;
  }
}
.oc-guidebtn {
  position: relative;
  margin-bottom: 3rem;
  text-align: center;
}
.oc-guidebtn a {
  position: relative;
  top: 0;
  display: inline-block;
  width: 95%;
  min-width: auto;
  padding: 0.5rem 1rem 0.3rem;
  background-color: var(--of-color-green);
  border-radius: 0.8rem;
  text-align: center;
  text-decoration: none;
  color: var(--of-color-beige);
  font-size: 1.2rem;
  letter-spacing: 0.2rem;
  filter: drop-shadow(0 0.3rem 0 var(--of-color-d-green));
  transition: none;
}
@media (min-width: 600px) {
  .oc-guidebtn a {
    width: auto;
    min-width: 480px;
  }
}
.oc-guidebtn a:hover {
  filter: unset;
  top: 0.25rem;
}
.oc-guidebtn span {
  display: block;
  width: 100%;
  margin: 0 auto;
  padding: 0 1rem;
  background-color: var(--of-color-beige);
  border-radius: 1rem;
  font-size: 0.8rem;
  color: var(--of-color-green);
  letter-spacing: 0.1rem;
}
@media (min-width: 600px) {
  .oc-guidebtn span {
    width: 90%;
    letter-spacing: 0.2rem;
  }
}
.oc-guidebtn .icon_cart {
  width: 1.4rem;
  margin-right: 0.1rem;
  vertical-align: -0.1rem;
}
@media (min-width: 600px) {
  .oc-guidebtn .icon_cart {
    margin-right: 0.3rem;
  }
}
.oc-guidebtn .icon_apple {
  width: 1.1rem;
  margin-right: 0.3rem;
  vertical-align: -0.2rem;
}
@media (min-width: 600px) {
  .oc-guidebtn .icon_apple {
    margin-right: 0.7rem;
  }
}
.oc-guidebtn .oc-guidebtn__ec::after {
  content: "open_in_new";
  font-family: var(--fontfamily-google-icon);
  font-size: 1rem;
  font-variation-settings: "FILL" 0, "wght" 200, "GRAD" 0, "opsz" 24;
  vertical-align: -0.1rem;
}

.op-balloon {
  filter: drop-shadow(0.25rem 0.25rem 0.2rem rgba(var(--of-color-primary-rgb), 0.5));
  display: block;
  z-index: 20;
  width: 230px;
  animation: floating-y 1.8s ease-in-out infinite alternate-reverse;
}
@media (max-width: 599px) {
  .op-balloon {
    width: 38vw;
  }
}

@keyframes floating-y {
  0% {
    transform: translateY(-0.2rem) rotate(1deg);
  }
  100% {
    transform: translateY(0.2rem) rotate(0);
  }
}
.oc-fullwidth-fotobox {
  position: relative;
  overflow: hidden;
  height: 50vh;
  border-radius: 50% 50% 0% 0%/15% 15% 0% 0%;
  margin-left: -10%;
  margin-right: -10%;
  padding-left: 10%;
  padding-right: 10%;
}
.oc-fullwidth-fotobox .oc-fullwidth-fotobox__beltimg img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.oc-fullwidth-fotobox::after {
  content: "";
  position: absolute;
  bottom: -5vh;
  width: 100%;
  height: 10vh;
  left: 50%;
  transform: translateX(-50%);
  border-radius: 50% 50% 0% 100%/100% 100% 0% 0%;
  background: url(../images/back_sumi.jpg) repeat top left;
}
@media (min-width: 600px) {
  .oc-fullwidth-fotobox {
    height: 60vh;
    border-radius: 50% 50% 0% 0%/30% 30% 0% 0%;
  }
  .oc-fullwidth-fotobox::after {
    bottom: -10vh;
    height: 20vh;
    border-radius: 50% 50% 0% 100%/100% 100% 0% 0%;
  }
}

.oc-ontop-balloon {
  position: relative;
}
.oc-ontop-balloon .op-balloon {
  position: absolute;
  height: auto;
}
.oc-ontop-balloon .op-balloon.op-balloon__pc {
  display: none;
}
@media (min-width: 980px) {
  .oc-ontop-balloon .op-balloon.op-balloon__pc {
    display: block;
  }
}
.oc-ontop-balloon .op-balloon.op-balloon__tab {
  display: block;
}
@media (min-width: 980px) {
  .oc-ontop-balloon .op-balloon.op-balloon__tab {
    display: none;
  }
}

.op-headlineimg img {
  display: block;
  width: auto;
  margin: 0 auto 2rem;
}
@media (min-width: 600px) {
  .op-headlineimg img {
    width: 750px;
  }
}

.oc-4setbox > div {
  padding: 1rem 0;
  border-bottom: var(--ark-menulist_border);
}
@media (min-width: 600px) {
  .oc-4setbox {
    grid-template-columns: 1fr 1fr;
    gap: 4rem 2rem;
  }
  .oc-4setbox > div {
    padding: 0;
    border-bottom: none;
  }
  .oc-4setbox > div:nth-child(2n+1) {
    border-right: var(--ark-menulist_border);
    padding-right: 2rem;
  }
  .oc-4setbox > div:nth-child(n+3)::before {
    content: "";
    position: absolute;
    top: -2rem;
    width: calc(100% - 2rem);
    height: 1px;
    border-top: var(--ark-menulist_border);
  }
}
.oc-4setbox .oc-4setbox__item {
  padding-bottom: 1rem;
  font-size: 0.85rem;
  line-height: 1.9;
}
.oc-4setbox .oc-4setbox__item .oc-fotobox {
  display: inline;
  width: 45%;
  float: right;
  margin-left: 1rem;
}

/*! =======================================
このCSSファイルはSassから生成されていますので、
直接編集しないようご注意ください
※※※※※※※※※※※※※※※※※※※※※※※※
========================================= */
.page-template-page-bkw .l-content {
  background-color: var(--ark-color--bg);
}

.page-template-page-bkw-slim {
  --ark-width--article: var(--ark-width--article--slim);
}
.page-template-page-bkw-slim .l-content {
  background-color: var(--ark-color--bg);
}

/*! =======================================
このCSSファイルはSassから生成されていますので、
直接編集しないようご注意ください
※※※※※※※※※※※※※※※※※※※※※※※※
========================================= */
.ou-img-mask-circle {
  mask-image: url(../images/foto_cir_mask.png);
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
}

.ou-img-snapshot {
  border: 5px solid #FFF;
  transform: rotate(-5deg);
  filter: drop-shadow(0.2rem 0.2rem 0.1rem rgba(var(--of-color-primary-rgb), 0.5));
}

.has-of-green {
  color: var(--of-color-green);
}

.has-of-winter {
  color: #246d8c;
}

.has-of-spring {
  color: #ed7377;
}

.has-of-summer {
  color: #35a744;
}

.has-of-autumn {
  color: #b23346;
}

.u-ls-1 {
  letter-spacing: 0.1rem;
}

.u-ls-2 {
  letter-spacing: 0.2rem;
}

.u-ls-3 {
  letter-spacing: 0.3rem;
}

.u-ls-4 {
  letter-spacing: 0.4rem;
}

.u-ls-5 {
  letter-spacing: 0.5rem;
}

/*! =======================================
このCSSファイルはSassから生成されていますので、
直接編集しないようご注意ください
※※※※※※※※※※※※※※※※※※※※※※※※
========================================= */
.ol-front {
  font-family: var(--fontfamily-mincho);
}
.ol-front .ol-front__fv {
  position: relative;
  height: calc(100vh - var(--ark-header_height));
}
.ol-front .ol-front__fv video {
  position: fixed;
  top: 0;
  z-index: 0;
  width: calc(100% - var(--of-width--side-navi));
  height: 100vh;
  object-fit: cover;
  object-position: center;
}
.ol-front .ol-front__fv .overlay {
  position: fixed;
  z-index: 1;
  background: url(../images/back_dot.png) #000 repeat left top;
  width: calc(100% - var(--of-width--side-navi));
  height: 100vh;
  opacity: 0;
  transition: opacity 0.8s ease;
}
.ol-front .ol-front__fvcopy {
  position: absolute;
  top: 15vh;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  padding: 0 5rem;
  text-shadow: 1px 1px 4px #fff, -1px -1px 4px #fff;
  font-size: 1.5rem;
  font-family: var(--fontfamily-mincho);
  writing-mode: vertical-rl;
  opacity: 0;
  animation: 2s ease 1.5s fv-blur;
  animation-fill-mode: both;
  transition: all 1s;
}
.ol-front .ol-front__fvcopy h2 {
  font-size: 2.2rem;
  padding: 0.5rem 0;
}
@media (min-width: 980px) {
  .ol-front .ol-front__fvcopy {
    writing-mode: horizontal-tb;
    top: 35vh;
    left: 0;
    transform: none;
  }
  .ol-front .ol-front__fvcopy h2 br {
    display: none;
  }
}
@media (min-width: 980px) {
  .ol-front .ol-front__fvcopy {
    top: 35vh;
  }
}
.ol-front .ol-front__scrollbox {
  position: absolute;
  bottom: 3vh;
  width: 100%;
  opacity: 0;
  z-index: 1010;
}

@keyframes fv-blur {
  from {
    filter: blur(20px);
    opacity: 0;
  }
  to {
    filter: blur(0);
    opacity: 1;
  }
}
.sec-intro {
  position: relative;
  z-index: 10;
  background: url(../images/back_sumi.jpg) repeat top left;
  margin-bottom: 10rem;
  padding: 2rem 0;
}
.sec-intro .l-container {
  max-width: var(--ark-width--article--slim);
}
.sec-intro .sec-intro__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1%;
}
.sec-intro .sec-intro__grid p {
  font-size: 1.1rem;
  line-height: 2;
  letter-spacing: var(--ark-letter_spacing);
}
.sec-intro .sec-intro__grid .head_sign {
  max-width: 50%;
}
@media (min-width: 600px) {
  .sec-intro .sec-intro__grid .head_sign {
    max-width: 200px;
  }
}
@media (min-width: 980px) {
  .sec-intro .sec-intro__grid {
    grid-template-columns: 1.3fr 1fr;
    gap: 0 5%;
  }
  .sec-intro .sec-intro__grid div:nth-child(2) {
    grid-row: 1/3;
    grid-column: 2/3;
  }
}

.sec-newslist {
  position: relative;
  z-index: 10;
  background: url(../images/back_sumi.jpg) repeat top left;
  margin-bottom: 10rem;
  padding: 2rem 0;
}
.sec-newslist .p-postList.-type-card .p-postList__body {
  padding-top: 0.2rem;
}
.sec-newslist .p-postList.-type-card .p-postList__item {
  flex-basis: 50%;
}
@media (min-width: 980px) {
  .sec-newslist .p-postList.-type-card .p-postList__item {
    flex-basis: 25%;
  }
}
.sec-newslist .p-postList__title {
  font-size: 1rem;
}

.sec-recruit {
  position: relative;
  z-index: 10;
  background-image: url(../images/back_sumi.jpg);
  margin-bottom: 10rem;
  padding-bottom: 4rem;
  background-repeat: repeat;
}
@media (min-width: 980px) {
  .sec-recruit {
    background-repeat: repeat-x;
    background-position-y: 2.5rem;
  }
}
.sec-recruit__wrap {
  position: relative;
  background: url(../images/foto/foto_team_ogiwara.jpg) no-repeat center top;
  background-size: 160% auto;
  z-index: 10;
  padding-top: 60vh;
}
@media (min-width: 980px) {
  .sec-recruit__wrap {
    background-size: cover;
  }
}
.sec-recruit .sec-recruit__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2%;
}
@media (min-width: 600px) {
  .sec-recruit .sec-recruit__grid {
    grid-template-columns: 1fr 1fr;
    gap: 3%;
  }
  .sec-recruit .sec-recruit__grid div:nth-child(1) {
    grid-row: 1/2;
    grid-column: 1/3;
  }
}
@media (min-width: 980px) {
  .sec-recruit .sec-recruit__grid {
    grid-template-columns: 1.3fr 1fr 1fr;
  }
  .sec-recruit .sec-recruit__grid div:nth-child(1) {
    grid-row: auto;
    grid-column: auto;
  }
}
@media (min-width: 1300px) {
  .sec-recruit .sec-recruit__grid {
    gap: 4%;
  }
}
.sec-recruit .sec-recruit__description {
  padding-top: 0;
}
@media (min-width: 980px) {
  .sec-recruit .sec-recruit__description {
    padding-top: 3rem;
  }
}
.sec-recruit .sec-recruit__entry {
  display: inline-block;
  color: var(--of-color-primary);
  text-decoration: none;
  width: 100%;
  padding: 1.3rem 0.5rem;
  background-color: var(--ark-color--bg);
  border: 1px solid var(--of-color-primary);
  border-radius: 0.6rem;
  box-shadow: 0.1rem 0.1rem 0.1rem var(--of-color-l-brown);
  line-height: 2.5;
  text-align: center;
  transition: transform 0.3s ease-in-out;
}
.sec-recruit .sec-recruit__entry h3 {
  margin-bottom: 2rem;
}
.sec-recruit .sec-recruit__entry img {
  max-width: 12rem;
}
.sec-recruit .sec-recruit__entry:hover {
  transform: scale(1.03);
  box-shadow: 0.2rem 0.2rem 0.5rem var(--of-color-l-brown);
}

.sec-feature {
  position: relative;
  margin-bottom: 10rem;
  padding: 90vh 0 0;
}
.sec-feature__wrap {
  position: relative;
  z-index: 1;
}
.sec-feature__content {
  position: relative;
  z-index: 10;
  background: url(../images/back_sumi.jpg) repeat top left;
  max-width: 100%;
  padding: 3rem 0;
}
.sec-feature h2 {
  font-size: 1.4rem;
  margin-bottom: 2rem;
  text-align: center;
}
@media (min-width: 600px) {
  .sec-feature h2 {
    font-size: 1.75em;
  }
}
.sec-feature__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.sec-feature__bg > div {
  position: sticky;
  top: 0;
  background: url(../images/foto/foto_field.jpg) no-repeat center top;
  background-size: cover;
  width: 100%;
  height: 100vh;
  background-size: auto 100vh;
  z-index: -1;
}
.sec-feature.feature-history {
  padding-bottom: 30vh;
}
.sec-feature.feature-hatorazu {
  padding-bottom: 70vh;
}
.sec-feature.feature-hatorazu h2 {
  color: var(--of-color-green);
}
.sec-feature.feature-hatorazu .sec-feature__bg > div {
  background-image: url(../images/foto/foto_appleharvest.jpg);
  z-index: auto;
}
.sec-feature__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5%;
  align-items: center;
  margin-bottom: 2rem;
}
.sec-feature__grid div:nth-child(2) {
  display: none;
}
@media (min-width: 600px) {
  .sec-feature__grid {
    grid-template-columns: 2fr 1fr;
  }
  .sec-feature__grid div:nth-child(2) {
    display: block;
  }
}
@media (min-width: 980px) {
  .sec-feature__grid {
    grid-template-columns: 4fr 1fr;
  }
}
.sec-feature__grid div:first-child {
  padding-left: 0;
}
@media (min-width: 980px) {
  .sec-feature__grid div:first-child {
    padding-left: 15%;
  }
}
.sec-feature__grid p {
  line-height: 2;
}

/*! =======================================
このCSSファイルはSassから生成されていますので、
直接編集しないようご注意ください
※※※※※※※※※※※※※※※※※※※※※※※※
========================================= */
.sec-philosophy {
  margin-bottom: 3rem;
}
.sec-philosophy .sec-philosophy__text {
  padding-top: 2rem;
}
.sec-philosophy .bln-discover {
  position: relative;
  top: 0;
  left: 58%;
  right: auto;
}
@media (min-width: 980px) {
  .sec-philosophy .bln-discover {
    top: -1rem;
    left: auto;
    right: -3rem;
    width: 230px;
    margin-left: auto;
    margin-right: 0;
  }
}
.sec-philosophy .oc-fotobox {
  margin-top: -5rem;
}
@media (min-width: 980px) {
  .sec-philosophy .oc-fotobox {
    margin-top: -4rem;
  }
}

.sec-hatorazuringo-feature {
  margin-bottom: 3rem;
  padding-top: 1rem;
}
.sec-hatorazuringo-feature .bln_delicious_hatorazu.oc-ontop-balloon img {
  top: -1rem;
  left: 55%;
}
@media (min-width: 600px) {
  .sec-hatorazuringo-feature .bln_delicious_hatorazu.oc-ontop-balloon img {
    top: 2.5rem;
  }
}
.sec-hatorazuringo-feature .sec-hatorazuringo-feature__text {
  padding-top: 0;
}
@media (min-width: 600px) {
  .sec-hatorazuringo-feature .sec-hatorazuringo-feature__text {
    padding-top: 2rem;
  }
}

.sec-hatorazuringo-feature .ol-gridbox .op-balloon,
.sec-naturesbounty .ol-gridbox .op-balloon {
  position: absolute;
  top: 0;
  left: 58%;
}
@media (min-width: 980px) {
  .sec-hatorazuringo-feature .ol-gridbox .op-balloon,
  .sec-naturesbounty .ol-gridbox .op-balloon {
    top: -2rem;
    right: -4rem;
  }
}
.sec-hatorazuringo-feature .oc-fotobox,
.sec-naturesbounty .oc-fotobox {
  text-align: center;
}
@media (min-width: 980px) {
  .sec-hatorazuringo-feature .oc-fotobox,
  .sec-naturesbounty .oc-fotobox {
    text-align: left;
  }
}
.sec-hatorazuringo-feature .oc-fotobox__imgcenter,
.sec-naturesbounty .oc-fotobox__imgcenter {
  margin-top: 2rem;
}
@media (min-width: 600px) {
  .sec-hatorazuringo-feature .oc-fotobox__imgcenter,
  .sec-naturesbounty .oc-fotobox__imgcenter {
    margin-top: 1rem;
  }
}

.sec-passionate-farming {
  margin-bottom: 8rem;
}
.sec-passionate-farming .op-balloon {
  top: 6rem;
  left: 1.5rem;
}
@media (min-width: 980px) {
  .sec-passionate-farming .op-balloon {
    top: 10rem;
    left: auto;
    right: 73%;
  }
}
.sec-passionate-farming .sec-passionate-farming__text {
  margin: 0 auto 4rem;
}
@media (min-width: 600px) {
  .sec-passionate-farming .sec-passionate-farming__text {
    width: 90%;
  }
}
@media (min-width: 600px) {
  .sec-passionate-farming .sec-passionate-farming__elements h3 img {
    max-width: 23rem;
    margin-bottom: 1.5rem;
  }
}
.sec-passionate-farming .sec-passionate-farming__motto > div {
  width: 80%;
  margin: 2rem auto;
  padding-right: 10%;
}

.sec-naturesbounty .oc-ontop-balloon img {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: 12;
  height: 53vh;
  filter: drop-shadow(0.25rem 0.25rem 0.2rem rgba(var(--of-color-primary-rgb), 0.5));
  animation: naturesbounty-cloud 2.2s ease-in-out infinite alternate-reverse;
}
@media (min-width: 980px) {
  .sec-naturesbounty .oc-ontop-balloon img {
    top: 2rem;
    height: auto;
  }
}
.sec-naturesbounty .oc-fullwidth-fotobox {
  margin-bottom: 3rem;
}
.sec-naturesbounty .sec-naturesbounty__text {
  padding-top: 0;
}
@media (min-width: 600px) {
  .sec-naturesbounty .sec-naturesbounty__text {
    padding-top: 2rem;
  }
}
.sec-naturesbounty .sec-naturesbounty__pitchline {
  font-size: 1.25rem;
  letter-spacing: 0.2rem;
  color: var(--of-color-green);
}
.sec-naturesbounty .sec-naturesbounty__pitchline br {
  display: none;
}
@media (min-width: 980px) {
  .sec-naturesbounty .sec-naturesbounty__pitchline br {
    display: inline;
  }
}

@keyframes naturesbounty-cloud {
  0% {
    transform: translateX(-50%) translateY(-0.2rem);
  }
  100% {
    transform: translateX(-50%) translateY(0.2rem);
  }
}
.sec-hatorazu-process {
  margin-bottom: 5rem;
}
.sec-hatorazu-process .sec-hatorazu-process__content {
  position: relative;
}
.sec-hatorazu-process .sec-hatorazu-process__content .img_twig {
  display: none;
  position: absolute;
  right: 0;
  top: 10rem;
  width: 13%;
}
@media (min-width: 600px) {
  .sec-hatorazu-process .sec-hatorazu-process__content .img_twig {
    display: block;
  }
}
.sec-hatorazu-process .sec-hatorazu-process__seasons {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  margin-top: 4rem;
}
.sec-hatorazu-process .sec-hatorazu-process__seasons > div:nth-child(1) {
  order: 1;
}
.sec-hatorazu-process .sec-hatorazu-process__seasons > div:nth-child(2) {
  order: 3;
}
.sec-hatorazu-process .sec-hatorazu-process__seasons > div:nth-child(3) {
  order: 2;
}
.sec-hatorazu-process .sec-hatorazu-process__seasons > div:nth-child(4) {
  order: 4;
}
.sec-hatorazu-process .sec-hatorazu-process__item h3 {
  margin: 0 0 0.5rem;
  font-size: 2.2rem;
  letter-spacing: 0.8rem;
}
.sec-hatorazu-process .sec-hatorazu-process__item .ol-gridbox {
  grid-template-columns: 1fr;
  gap: 0;
}
.sec-hatorazu-process .sec-hatorazu-process__item .ou-img-snapshot {
  width: 40%;
  position: absolute;
  top: -5rem;
  right: 0;
}
.sec-hatorazu-process .sec-hatorazu-process__item .img_txt_season {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 21;
  width: 33%;
}
.sec-hatorazu-process .sec-hatorazu-process__item .img_pic_bee {
  display: none;
}
.sec-hatorazu-process .sec-hatorazu-process__img {
  padding: 0.5rem 1.5rem 0 2.5rem;
}
.sec-hatorazu-process .sec-hatorazu-process__text {
  margin-bottom: 1.5rem;
}
@media (min-width: 600px) {
  .sec-hatorazu-process .sec-hatorazu-process__seasons {
    display: block;
    column-count: 2;
    column-gap: 2rem;
  }
  .sec-hatorazu-process .sec-hatorazu-process__item {
    page-break-inside: avoid;
    break-inside: avoid;
  }
  .sec-hatorazu-process .sec-hatorazu-process__item h3 {
    margin: 1rem 0 0.5rem;
    font-size: 1.75rem;
  }
  .sec-hatorazu-process .sec-hatorazu-process__item .ol-gridbox {
    grid-template-columns: 3fr 2fr;
    gap: 2rem;
  }
  .sec-hatorazu-process .sec-hatorazu-process__item .ou-img-snapshot {
    position: static;
    width: 90%;
  }
  .sec-hatorazu-process .sec-hatorazu-process__item .img_pic_bee {
    position: relative;
    display: block;
    padding: 3rem 0 1rem;
  }
  .sec-hatorazu-process .sec-hatorazu-process__item .img_pic_bee img {
    position: relative;
    left: 40%;
  }
  .sec-hatorazu-process .sec-hatorazu-process__img {
    padding: 0.5rem 0 0 1rem;
  }
  .sec-hatorazu-process .sec-hatorazu-process__text {
    font-size: 0.8rem;
  }
}
@media (min-width: 980px) {
  .sec-hatorazu-process .sec-hatorazu-process__seasons {
    column-gap: 4rem;
  }
  .sec-hatorazu-process .sec-hatorazu-process__text {
    line-height: 2;
  }
}

.sec-sanchoku-lineup .bln_hatorazu_philosophy.oc-ontop-balloon img {
  top: -1rem;
  left: 17%;
}
@media (min-width: 600px) {
  .sec-sanchoku-lineup .bln_hatorazu_philosophy.oc-ontop-balloon img {
    top: 2.5rem;
  }
}

/*! =======================================
このCSSファイルはSassから生成されていますので、
直接編集しないようご注意ください
※※※※※※※※※※※※※※※※※※※※※※※※
========================================= */
.sec-reason-hatorazu {
  margin-bottom: 3rem;
}
.sec-reason-hatorazu .sec-reason-hatorazu__text {
  padding-top: 2rem;
}
.sec-reason-hatorazu .oc-ontop-balloon img {
  top: 2rem;
  left: 0.8rem;
}
@media (min-width: 600px) {
  .sec-reason-hatorazu .oc-ontop-balloon img {
    top: 3rem;
    left: calc(50% - 21rem);
  }
}
.sec-reason-hatorazu .oc-fotobox {
  margin-top: -5rem;
}
@media (min-width: 980px) {
  .sec-reason-hatorazu .oc-fotobox {
    margin-top: -4rem;
  }
}

.sec-hatorazuringo-benefits {
  margin-bottom: 3rem;
  padding-top: 1rem;
  padding-bottom: 2rem;
}
.sec-hatorazuringo-benefits .oc-ontop-balloon img {
  top: -1rem;
  right: 1rem;
}
@media (min-width: 600px) {
  .sec-hatorazuringo-benefits .oc-ontop-balloon img {
    top: 2.5rem;
    left: calc(50% + 8rem);
  }
}
.sec-hatorazuringo-benefits .op-headlineimg img {
  margin-bottom: 4rem;
}
.sec-hatorazuringo-benefits .oc-4setbox__item {
  line-height: 1.6;
  font-size: 1.2rem;
}
.sec-hatorazuringo-benefits .oc-4setbox__item .img_dakara {
  display: block;
  width: 38%;
  margin: 0.5rem 0;
}
.sec-hatorazuringo-benefits .sec-hatorazuringo-benefits__cos {
  margin-bottom: 4rem;
  text-align: center;
  font-size: 2rem;
  letter-spacing: 0.2rem;
}
.sec-hatorazuringo-benefits .sec-hatorazuringo-benefits__cos .img_dakara {
  width: 14rem;
  margin-right: 0.5rem;
  vertical-align: middle;
}

.sec-hatorazu-story .oc-ontop-balloon img {
  top: -1.5rem;
  left: 2%;
}
@media (min-width: 980px) {
  .sec-hatorazu-story .oc-ontop-balloon img {
    left: calc(50% - 23rem);
  }
}
.sec-hatorazu-story .sec-hatorazu-story__article1, .sec-hatorazu-story .sec-hatorazu-story__article2 {
  line-height: 2;
}
.sec-hatorazu-story .sec-hatorazu-story__article1 {
  gap: 3rem;
}
.sec-hatorazu-story .sec-hatorazu-story__article1 > div:first-child {
  padding-top: 2rem;
}
.sec-hatorazu-story .sec-hatorazu-story__article1 h3 {
  margin-bottom: 2rem;
}

/*! =======================================
このCSSファイルはSassから生成されていますので、
直接編集しないようご注意ください
※※※※※※※※※※※※※※※※※※※※※※※※
========================================= */
.sec-appleking {
  margin-bottom: 3rem;
}
.sec-appleking .sec-appleking__text {
  padding-top: 6rem;
}
.sec-appleking .op-headlineimg img {
  margin-bottom: 0;
}
.sec-appleking .oc-ontop-balloon img {
  top: 1.5rem;
  right: 0.8rem;
}
@media (min-width: 980px) {
  .sec-appleking .oc-ontop-balloon img {
    top: 2rem;
    left: calc(50% + 14rem);
  }
}
.sec-appleking .bln-discover {
  position: relative;
  top: 0;
  left: 58%;
  right: auto;
}
@media (min-width: 980px) {
  .sec-appleking .bln-discover {
    top: -1rem;
    left: auto;
    right: -2rem;
    width: 230px;
    margin-left: auto;
    margin-right: 0;
  }
}
.sec-appleking .oc-fotobox {
  margin-top: -5rem;
}
@media (min-width: 980px) {
  .sec-appleking .oc-fotobox {
    margin-top: -5rem;
  }
}

.sec-sunfuji-spirit {
  margin-bottom: 8rem;
}
.sec-sunfuji-spirit .oc-fullwidth-fotobox__beltimg img {
  object-position: center bottom;
}
.sec-sunfuji-spirit .sec-sunfuji-spirit__elements {
  grid-template-columns: 1fr;
  max-width: 450px;
  margin: 0 auto;
}
@media (min-width: 980px) {
  .sec-sunfuji-spirit .sec-sunfuji-spirit__elements {
    grid-template-columns: 1fr 1fr 1fr;
    max-width: none;
  }
}
.sec-sunfuji-spirit .sec-sunfuji-spirit__elements > div {
  position: relative;
}
.sec-sunfuji-spirit .sec-sunfuji-spirit__elements .balloon_special {
  position: absolute;
  top: 0;
  left: 0.5rem;
  width: 35%;
  filter: drop-shadow(0.2rem 0.2rem 0.2rem rgba(var(--of-color-primary-rgb), 0.5));
}
.sec-sunfuji-spirit .sec-sunfuji-spirit__item {
  height: calc(100% - 2.5rem);
  margin-top: 2.5rem;
  background-color: var(--ark-color--bg);
  border: 1px solid var(--of-color-gray);
  border-radius: 0.7rem;
}
.sec-sunfuji-spirit .sec-sunfuji-spirit__item h3 {
  margin-bottom: 1rem;
  padding: 0 1rem;
}
.sec-sunfuji-spirit .sec-sunfuji-spirit__item p {
  padding: 0 1rem;
  font-size: 0.9rem;
}
.sec-sunfuji-spirit .sec-sunfuji-spirit__kv {
  height: 15rem;
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: cover;
  border-radius: 0.7rem;
  margin-bottom: 1.5rem;
}

/*! =======================================
このCSSファイルはSassから生成されていますので、
直接編集しないようご注意ください
※※※※※※※※※※※※※※※※※※※※※※※※
========================================= */
.p-home .pagination {
  display: none;
}

.op-home-head img {
  width: 100%;
  aspect-ratio: 8/5;
}
@media (min-width: 600px) {
  .op-home-head img {
    height: 250px;
    aspect-ratio: auto;
    object-fit: cover;
    object-position: center;
  }
}

.op-blog-content.ol-gridbox {
  display: block;
}
@media (min-width: 980px) {
  .op-blog-content.ol-gridbox {
    display: grid;
    grid-template-columns: 1fr 1.3fr;
    align-items: start;
  }
}
.op-blog-content .op-blog-content__articles, .op-blog-content .op-blog-content__aside {
  max-width: 600px;
  margin: 3rem auto 0;
}
@media (min-width: 980px) {
  .op-blog-content .op-blog-content__articles {
    order: 2;
    max-width: none;
    padding-right: 3rem;
    margin: initial;
  }
}
@media (min-width: 600px) {
  .op-blog-content .op-blog-content__articles .p-entry {
    background-color: var(--ark-color--bg);
    padding: 2rem 3rem;
  }
}
.op-blog-content .op-blog-content__articles .p-entry__thumb {
  margin-top: 0;
}
.op-blog-content .op-blog-content__article {
  margin-top: 0.5rem;
  font-size: 0.9rem;
}
.op-blog-content .op-blog-content__aside {
  font-size: 0.8rem;
}
@media (min-width: 980px) {
  .op-blog-content .op-blog-content__aside {
    order: 1;
    padding-right: 3rem;
    margin: initial;
    position: sticky;
    top: 0;
  }
}
.op-blog-content .op-blog-content__aside .oc-leaf-title {
  margin-top: 1rem;
  margin-bottom: 1rem;
  letter-spacing: 0.3rem;
}
.op-blog-content .op-blog-content__aside .p-postList__item {
  margin-bottom: 0.5rem;
}
.op-blog-content .op-blog-content__aside .p-topArea__body {
  display: none;
}
@media (min-width: 980px) {
  .op-blog-content .op-blog-content__aside .p-topArea__body {
    display: block;
  }
}
.op-blog-content .op-blog-content__latest {
  display: none;
}
@media (min-width: 980px) {
  .op-blog-content .op-blog-content__latest {
    display: block;
    margin-bottom: 2rem;
    list-style: none;
  }
}
.op-blog-content .op-blog-content__latest a {
  display: inline-block;
  position: relative;
  width: 100%;
  padding-left: 1em;
  transition: 0.5s;
  text-decoration: none;
  color: var(--of-color-primary);
  line-height: 2;
}
.op-blog-content .op-blog-content__latest a::before {
  position: absolute;
  top: 0.4rem;
  left: 0;
  opacity: 0;
  content: "";
  width: 7.2093023256vw;
  height: 5.8139534884vw;
  background: url(../images/icon_readpost.svg) no-repeat left top;
  background-size: contain;
  display: inline-block;
}
@media (min-width: 600px) {
  .op-blog-content .op-blog-content__latest a::before {
    width: 31px;
    height: 25px;
  }
}
.op-blog-content .op-blog-content__latest a:hover {
  filter: brightness(1.7);
}
.op-blog-content .op-blog-content__latest .current-post a {
  padding-left: 2em;
  font-size: 0.95rem;
}
.op-blog-content .op-blog-content__latest .current-post a::before {
  opacity: 1;
}
.op-blog-content .op-blog-content__pagenavi {
  display: none;
  background: var(--ark-color--bg);
  padding: 0.5rem 2rem;
}
@media (min-width: 980px) {
  .op-blog-content .op-blog-content__pagenavi {
    display: grid;
    gap: 0;
  }
}
.op-blog-content .op-blog-content__pagenavi > div {
  text-align: center;
}
.op-blog-content .op-blog-content__pagenavi .oc-button {
  font-size: 0.9rem;
}
.--page-home .op-blog-content .p-postList__title {
  font-size: 1.3rem;
  margin-bottom: 1.5rem;
}

.p-postList .p-postList__title {
  font-family: var(--fontfamily-mincho);
}
@media (min-width: 600px) {
  .p-postList.-type-full {
    background-color: var(--ark-color--bg);
    padding: 2rem 3rem;
  }
}
.p-postList.-type-full > a {
  display: block;
}
.p-postList.-type-full > a > div {
  width: 100%;
  max-width: none;
}
.p-postList.-type-full .p-postList__item {
  padding-bottom: 2rem;
  margin-bottom: 1rem;
  border-bottom: 1px dotted var(--of-color-l-brown);
}
.p-postList.-type-list .p-postList__thumb {
  width: 26%;
}

.op-post-pagenavi {
  grid-template-columns: 2.5rem 1fr 2.5rem;
  padding: 0.5rem 0 0.2rem;
  border-top: 1px solid var(--of-color-primary);
  border-bottom: 1px solid var(--of-color-primary);
}
@media (min-width: 980px) {
  .op-post-pagenavi {
    margin-left: 1rem;
  }
}
.op-post-pagenavi > div {
  text-align: center;
  font-size: 0.9rem;
}
.op-post-pagenavi .material-symbols-outlined {
  font-size: 1.7rem;
  margin-top: 0.2rem;
  color: var(--of-color-primary);
  font-variation-settings: "FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24;
}
.op-post-pagenavi a:hover {
  filter: brightness(1.7);
}
.op-post-pagenavi select {
  min-width: 4.5rem;
  margin-right: 0.5rem;
  text-align: center;
}

.p-archive .p-archive__title {
  margin-bottom: 6rem;
  padding: 0 1rem;
  text-align: left;
}
@media (min-width: 980px) {
  .p-archive .p-archive__title {
    text-align: center;
  }
}

.p-entry .p-entry__head .c-pageTitle__main {
  font-size: 1.6rem;
}

.op-entryfoot {
  padding: 1rem;
  border-top: 0.1rem solid var(--of-color-primary);
  border-bottom: 0.1rem solid var(--of-color-primary);
  font-size: 0.8rem;
}
.op-entryfoot .c-postAuthor {
  margin-bottom: 0.2rem;
}
.op-entryfoot .c-postAuthor__figure {
  border-radius: 0;
  width: 1.2em;
  height: 1.4em;
}

.op-sidebar {
  margin-top: 3rem;
  font-size: 0.8rem;
}
.op-sidebar h2.wp-block-heading {
  margin: 2rem 0;
  padding-left: calc(26px + 1rem);
  font-family: var(--fontfamily-mincho);
  font-weight: var(--fontfamily-mincho-weight);
  color: var(--of-color-green);
}
.op-sidebar h2.wp-block-heading::before {
  margin-left: calc(-26px - 1rem);
  margin-right: 1rem;
  vertical-align: -0.1rem;
  content: "";
  width: 6.0465116279vw;
  height: 4.6511627907vw;
  background: url(../images/title_leaf_l.png) no-repeat left top;
  background-size: contain;
  display: inline-block;
}
@media (min-width: 600px) {
  .op-sidebar h2.wp-block-heading::before {
    width: 26px;
    height: 20px;
  }
}

/*! =======================================
このCSSファイルはSassから生成されていますので、
直接編集しないようご注意ください
※※※※※※※※※※※※※※※※※※※※※※※※
========================================= */
html {
  font-size: 3.9534883721vw;
}
@media (min-width: 600px) {
  html {
    font-size: 17px;
  }
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  letter-spacing: 0;
  line-height: 1.8;
}

a {
  transition: filter 0.3s 0s ease-in-out, opacity 0.3s 0s ease-in-out;
}
a img {
  transition: filter 0.3s 0s ease-in-out;
}

p {
  margin-bottom: 1rem;
}

.c-pageTitle__main {
  font-family: var(--fontfamily-mincho);
  font-weight: var(--fontfamily-mincho-weight);
}

@media (min-width: 1300px) {
  .l-header {
    display: none;
  }
}

.l-content.--page-bk-white {
  background-color: var(--ark-color--bg);
}

.l-article,
.l-article-narrow {
  padding-left: 1rem;
  padding-right: 1rem;
}
@media (min-width: 600px) {
  .l-article,
  .l-article-narrow {
    padding-left: 3rem;
    padding-right: 3rem;
  }
}

.l-article-narrow {
  max-width: var(--of-width--article-narrow);
  margin-left: auto;
  margin-right: auto;
}

.c-postThumb .noimg {
  background-color: var(--ark-color--bg);
}
.c-postThumb .noimg .c-postThumb__img {
  height: 65%;
  object-fit: contain;
  top: 15%;
}

.l-footer {
  position: relative;
  z-index: 10;
  background: url(../images/back_sumi.jpg) repeat top left;
  border-top: 1px solid var(--of-color-primary);
}

.p-fixBtnWrap {
  right: 1%;
  bottom: -1.6rem;
}
@media (min-width: 600px) {
  .p-fixBtnWrap {
    right: 2%;
    bottom: 6%;
  }
}

.c-fixBtn {
  width: 5.5rem;
  height: 5.5rem;
  background: none;
  box-shadow: none;
  opacity: 1;
}

.p-drawer {
  background: rgba(83, 44, 47, 0.92);
}
.p-drawer .p-drawer__banner {
  padding: 1rem;
}

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

.oc-fotobox {
  position: relative;
  text-align: center;
}
.oc-fotobox .oc-fotobox__imgcenter {
  width: 75%;
}
@media (min-width: 600px) {
  .oc-fotobox .oc-fotobox__imgcenter {
    width: auto;
    max-width: 400px;
  }
}
@media (min-width: 980px) {
  .oc-fotobox .oc-fotobox__imgcenter {
    max-width: 100%;
  }
}
@media (min-width: 980px) {
  .oc-fotobox .pc-maxwidth-350 {
    max-width: 350px;
  }
}

.of-loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  transition: height 1s cubic-bezier(0.87, 0, 0.13, 1);
}
.of-loading.load-comp {
  height: 0;
}
.of-loading.load-comp .of-loading__ani, .of-loading.load-comp .of-loading__text {
  display: none;
}
.of-loading .of-loading__text {
  width: 100%;
  text-align: center;
  animation: loading-pulse 2s linear infinite;
}

@keyframes loading-pulse {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.oc-eclink {
  position: relative;
  z-index: 10;
  background: url(../images/back_appletree_green.jpg) no-repeat center center;
  background-size: cover;
  border-top: 5px solid var(--ark-color--bg);
  border-bottom: 5px solid var(--ark-color--bg);
  padding-top: 7rem;
  padding-bottom: 5rem;
  margin-bottom: 5rem;
  font-family: var(--fontfamily-mincho);
  color: #FFF;
}
.oc-eclink a {
  display: inline-block;
  color: var(--of-color-primary);
  text-decoration: none;
  color: #FFF;
}
.oc-eclink a:hover {
  opacity: 0.5;
}
.oc-eclink .oc-eclink__pointballoon {
  position: absolute;
  display: inline-block;
  top: -2rem;
  left: 30%;
  width: 10rem;
}
.oc-eclink .oc-eclink__grid {
  display: block;
}
@media (min-width: 1500px) {
  .oc-eclink .oc-eclink__grid {
    display: grid;
    grid-template-columns: 1.5fr 3fr 2fr;
    gap: 2rem;
  }
}
.oc-eclink .oc-eclink__logobox {
  text-align: center;
}
.oc-eclink .oc-eclink__logobox img {
  width: min(50vw, 18rem);
}
.oc-eclink .oc-eclink__shoptext {
  font-size: 2.1rem;
  padding-bottom: 1.5rem;
}
@media (min-width: 600px) {
  .oc-eclink .oc-eclink__shoptext {
    font-size: 2.6rem;
  }
}
.oc-eclink .oc-eclink__shoptext::after {
  content: "open_in_new";
  font-family: var(--fontfamily-google-icon);
  font-size: 1.5rem;
  font-variation-settings: "FILL" 0, "wght" 200, "GRAD" 0, "opsz" 24;
  margin-left: 1rem;
}
.oc-eclink .oc-eclink__promotion_wrap {
  display: flex;
  gap: 2rem;
  justify-content: center;
}
.oc-eclink .oc-eclink__promotion {
  padding: 0.5rem 1rem;
  border-top: 1px solid #FFF;
  border-bottom: 1px solid #FFF;
  text-align: center;
  line-height: 1.5;
  word-break: keep-all;
}
.oc-eclink .oc-eclink__promotion span {
  font-size: 1.4rem;
}
@media (min-width: 600px) {
  .oc-eclink .oc-eclink__promotion {
    padding: 1rem;
  }
  .oc-eclink .oc-eclink__promotion br {
    display: none;
  }
}
@media (min-width: 1500px) {
  .oc-eclink .oc-eclink__promotion {
    padding: 0.5rem 1rem;
  }
  .oc-eclink .oc-eclink__promotion br {
    display: inline;
  }
}
.oc-eclink.type_frontpage {
  margin-bottom: 0;
}

.oc-recommend {
  position: relative;
  z-index: 10;
  background: url(../images/back_sumi.jpg) repeat top left;
  padding: 2rem 0;
  margin-bottom: 8rem;
}
.oc-recommend .oc-recommend__slideitem {
  display: block;
  color: var(--of-color-primary);
  text-decoration: none;
  height: 100%;
  background-color: var(--ark-color--bg);
  border: 1px solid var(--of-color-gray);
  border-radius: 1rem;
  font-family: var(--fontfamily-mincho);
}
.oc-recommend .oc-recommend__slidekv {
  height: 13rem;
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: cover;
  border-radius: 1rem;
}
.oc-recommend .oc-recommend__slidecontent {
  padding: 1rem 1rem 3.2rem;
}
.oc-recommend .oc-recommend__slidecontent h3 {
  margin-bottom: 0.5rem;
}
.oc-recommend .oc-recommend__slidecontent p {
  line-height: 1.6;
  font-size: 0.9rem;
}
.oc-recommend .oc-recommend__slidecontent .oc-morebtn {
  position: absolute;
  bottom: 1.6rem;
  right: 1rem;
  width: 100%;
  font-size: 0.9rem;
}
.oc-recommend .oc-button {
  margin-top: 3rem;
}
.oc-recommend .splide__arrow--prev {
  left: 0;
}
.oc-recommend .splide__arrow--next {
  right: 0;
}

.oc-lineup .ol-gridbox {
  width: 100%;
  margin: 0 auto 3rem;
}
@media (min-width: 600px) {
  .oc-lineup .ol-gridbox {
    width: 70%;
  }
}
@media (min-width: 980px) {
  .oc-lineup .ol-gridbox {
    width: 85%;
  }
}
.oc-lineup .ol-gridbox div:first-child {
  padding-top: 1.2rem;
}
.oc-lineup .oc-lineup__prmark {
  justify-content: space-evenly;
}
.oc-lineup .oc-lineup__prmark img {
  width: 43%;
}
.oc-lineup .oc-lineup__showcase {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  line-height: 1.5;
}
.oc-lineup .oc-lineup__showcase > div {
  width: 48%;
  padding-bottom: 1rem;
}
@media (min-width: 600px) {
  .oc-lineup .oc-lineup__showcase > div {
    width: 32%;
  }
}
@media (min-width: 980px) {
  .oc-lineup .oc-lineup__showcase > div {
    width: 23%;
  }
}
.oc-lineup .oc-lineup__showcase > div a {
  text-decoration: none;
  font-family: var(--fontfamily-mincho);
  font-weight: var(--fontfamily-mincho-weight);
  color: var(--of-color-primary);
}
.oc-lineup .oc-lineup__showcase > div a:hover {
  opacity: 0.5;
}

.p-breadcrumb {
  background: url(../images/back_sumi.jpg) repeat top left;
  overflow-x: scroll;
  white-space: nowrap;
  word-break: keep-all;
}
.p-breadcrumb .p-breadcrumb__list {
  flex-wrap: nowrap;
}
@media (min-width: 600px) {
  .p-breadcrumb {
    overflow: auto;
  }
  .p-breadcrumb .p-breadcrumb__list {
    flex-wrap: wrap;
  }
}

.p-comments__num {
  font-size: 1rem;
  font-weight: normal;
}
.p-comments .comment-respond {
  margin-bottom: 5rem;
}

.c-commentList > .comment {
  background-color: #FFF;
}
.c-commentList .comment-metadata {
  padding-right: 1rem;
  text-align: right;
  line-height: 1.5;
}
.c-commentList .comment-content {
  margin-top: 0;
}
.c-commentList .children {
  padding-left: 0;
  border-left: none;
}
.c-commentList .children .comment-content {
  position: relative;
  background-color: var(--ark-color--gray);
  border-radius: 1rem;
  padding: 1rem 1rem 0.5rem;
}
.c-commentList .children .comment-content::before {
  content: "";
  position: absolute;
  top: -0.7rem;
  left: 2rem;
  width: 1.4rem;
  height: 1.4rem;
  background-color: var(--ark-color--gray);
  transform: rotate(45deg);
}

.comment-author .avatar {
  border-radius: initial;
}/*# sourceMappingURL=ogiwarafarm.css.map */