@charset "UTF-8";
/*
Author: onTheHammock LLC.
Author URI: https://onthehammock.com
Description : onTheHammock Original Theme
Version : 1
*/
*:focus {
  outline: none;
}
html {
  scroll-behavior: smooth;
  overflow-x: hidden;
}
body {
  margin: 0;
  font-weight: 400;
  line-height: 2;
  margin: 0;
  letter-spacing: 0.1em;
  font-family: -apple-system, "Quicksand", YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
  overflow-x: hidden;
  font-size: calc(10vw / 8);
}
@media (max-width: 768px) {
  body {
    font-weight: 400;
  }
}
a {
  cursor: pointer;
  text-decoration: none;
  color: black;
}
.a_underbar {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  cursor: pointer;
  text-decoration: none;
  color: black;
  display: inline-block;
  position: relative;
}
.a_underbar::after {
  content: "";
  width: 0%;
  height: 1px;
  display: block;
  background: #00633d;
  transition: all 0.2s linear;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.a_underbar:hover::after {
  width: 110%;
}
.a_underbar.anchor {
  display: block;
  padding-top: 70px;
  margin-top: -70px;
}
.a_underbar.anchor:hover::after {
  width: 0%;
}
a.anchor {
  display: block;
  padding-top: 70px;
  margin-top: -70px;
}
a.anchor:hover::after {
  width: 0%;
}
/*メニュー*/
header {
  display: block;
}
.header_area {
  width: 100vw;
  background-color: #fff;
  height: 7.1428571429vw;
  position: fixed;
  top: 0;
  left: 0;
}
#navArea {
  position: relative;
  width: 90%;
  font-size: min(1.6vw, 30px);
  max-width: 1600px;
  margin: 0 auto 0 auto;
  z-index: 1000;
  transition: 0.2s;
}
.header_top {
  position: fixed;
  max-width: 1600px;
  width: 90%;
  background-color: white;
  margin: 0 0 0 -5vw;
  display: flex;
  align-items: center;
  justify-content: space-between;
  z-index: 1001;
  padding: 3vw 5vw 2vw 5vw;
}
.header_top .toggle_btn {
  display: block;
  width: 60px;
  height: 30px;
  transform: translate(0, 0);
  transition: all 0.5s;
  cursor: pointer;
  z-index: 1000;
  margin-right: -8vw;
}
.header_top .toggle_btn span {
  display: block;
  position: absolute;
  left: 0;
  width: 30px;
  height: 2px;
  background-color: #00633d;
  transition: all 0.5s;
}
.header_top .toggle_btn span:nth-child(1) {
  top: 5px;
  width: 60px;
  animation: equalizer01 7000ms infinite;
}
.header_top .toggle_btn span:nth-child(2) {
  top: 15px;
  width: 30px;
  animation: equalizer02 5000ms infinite;
  animation-delay: 0.33s;
}
.header_top .toggle_btn span:nth-child(3) {
  top: 25px;
  width: 20px;
  animation: equalizer02 5000ms infinite;
}
.header_top .top_logo {
  text-align: center;
}
.header_top .top_logo img {
  width: 35vw;
  max-width: 400px;
}
@media (max-width: 768px) {
  .header_top .top_logo img {
    width: 60vw;
    margin: 2vw 0 1vw 20vw;
  }
}
.header_top .navarea {
  margin-bottom: -1vw;
}
.header_top .navarea ul, .header_top .sns_area ul {
  display: flex;
  list-style: none;
  gap: 2.5vw;
  font-size: 90%;
  letter-spacing: 0.1vw;
  align-items: center;
}
.header_top .sns_area ul {
  position: absolute;
  right: 2vw;
  top: -0.5vw;
  gap: 1.3vw;
  padding: 0;
}
.header_top .sns_area li img {
  width: 2vw;
}
.header_top .sns_area li:nth-child(3) img {
  width: 1.7vw;
}
.header_top .top_btn_area a img {
  width: 13vw;
  max-width: 200px;
}
nav {
  display: block;
  position: fixed;
  top: 0;
  bottom: 0;
  width: 60vw;
  background: rgba(255, 255, 255, 0.7);
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  transition: 0.5s;
  z-index: 1000;
  padding-top: 5vh;
}
nav .sns_area ul {
  display: flex;
  flex-direction: column;
}
nav .sns_area ul li a {
  display: flex !important;
  align-items: center;
  gap: 2vw;
  font-size: 100%;
}
nav .sns_area ul li a img {
  width: 5vw;
}
.open nav {
  left: 0;
}
.open .toggle_btn {
  left: 330px;
}
.open .toggle_btn span {
  width: 30px;
}
.open .toggle_btn span:nth-child(1) {
  transform: translate(0, 10px) rotate(-45deg);
  animation: unset;
  width: 30px;
}
.open .toggle_btn span:nth-child(2) {
  opacity: 0;
  animation: unset;
}
.open .toggle_btn span:nth-child(3) {
  transform: translate(0, -10px) rotate(45deg);
  animation: unset;
  width: 30px;
}
nav .inner {
  padding: 25px;
  padding-top: 10vw;
}
nav .inner ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
nav .inner ul li {
  position: relative;
  margin: 0;
}
nav .inner ul li a {
  display: block;
  color: #00633d;
  font-size: 210%;
  padding: 1em;
  text-decoration: none;
  transition-duration: 0.2s;
}
nav .inner ul li a:hover {
  background: #e4e4e4;
}
@media screen and (max-width: 768px) {
  nav {
    left: -100vw;
    width: 60vw;
  }
}
/*============
  @keyframes
  =============*/
@keyframes equalizer01 {
  0% {
    width: 70%;
  }
  10% {
    width: 50%;
  }
  20% {
    width: 100%;
  }
  30% {
    width: 10%;
  }
  40% {
    width: 50%;
  }
  50% {
    width: 70%;
  }
  60% {
    width: 50%;
  }
  70% {
    width: 10%;
  }
  80% {
    width: 100%;
  }
  90% {
    width: 10%;
  }
  100% {
    width: 70%;
  }
}
@keyframes equalizer02 {
  0% {
    width: 30%;
  }
  10% {
    width: 20%;
  }
  20% {
    width: 40%;
  }
  30% {
    width: 10%;
  }
  40% {
    width: 20%;
  }
  50% {
    width: 30%;
  }
  60% {
    width: 20%;
  }
  70% {
    width: 10%;
  }
  80% {
    width: 40%;
  }
  90% {
    width: 10%;
  }
  100% {
    width: 30%;
  }
}
/*============
  .toggle_btn
  =============*/
/*============
  #mask
  =============*/
#mask {
  display: none;
}
.open #mask {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  opacity: 0.7;
  z-index: 100;
  cursor: pointer;
  transition: all 0.5s;
}
#wrapper {
  width: 90%;
  font-size: min(1.6vw, 30px);
  max-width: 1600px;
  margin: 5vw auto 0 auto;
  background: #fff;
  position: relative;
  z-index: 120;
  text-align: center;
  padding: 5vh 5%;
}
@media (max-width: 768px) {
  #wrapper {
    padding: 5vh 5vw;
    width: auto;
  }
}
.topPagePicFlame {
  display: flex;
  flex-wrap: wrap;
}
.topPagePiclayut {
  margin: 0;
  line-height: 0;
}
.topPagePiclayut1 {
  display: flex;
  flex-direction: column;
  width: 20vw;
}
@media (max-width: 768px) {
  .topPagePiclayut1 {
    width: 50vw;
  }
  .topPagePiclayut1 img:nth-child(1) {
    width: 50vw;
  }
  .topPagePiclayut1 .topPagePiclayut2 img:nth-child(1) {
    width: 25vw;
    height: 13vh;
  }
  .topPagePiclayut1 .topPagePiclayut2 img:nth-child(2) {
    width: 25vw;
    height: 13vh;
  }
}
.topPagePiclayut2 {
  display: flex;
  flex-wrap: wrap;
}
@media (max-width: 768px) {
  .topPagePiclayut2 img:nth-child(1) {
    width: 20vw;
    height: 19.5vh;
  }
  .topPagePiclayut2 img:nth-child(2) {
    width: 20vw;
    height: 19.5vh;
  }
  .topPagePiclayut2 img:nth-child(3) {
    width: 15vw;
    height: 6.5vh;
  }
  .topPagePiclayut2 img:nth-child(4) {
    width: 15vw;
    height: 6.5vh;
  }
  .topPagePiclayut2 img:nth-child(5) {
    width: 10vw;
    height: 6.5vh;
  }
  .topPagePiclayut2 img:nth-child(6) {
    width: 15vw;
    height: 6.5vh;
  }
  .topPagePiclayut2 img:nth-child(7) {
    width: 15vw;
    height: 6.5vh;
  }
  .topPagePiclayut2 img:nth-child(8) {
    width: 10vw;
    height: 6.5vh;
  }
  .topPagePiclayut2 img:nth-child(9) {
    width: 10vw;
    height: 6.5vh;
  }
  .topPagePiclayut2 img:nth-child(10) {
    width: 10vw;
    height: 6.5vh;
  }
  .topPagePiclayut2 img:nth-child(11) {
    width: 10vw;
    height: 6.5vh;
  }
  .topPagePiclayut2 img:nth-child(12) {
    width: 10vw;
    height: 6.5vh;
  }
}
.topPagePiclayut3 {
  display: flex;
  flex-wrap: wrap;
  width: 40vw;
}
.topPagePiclayut4 {
  display: flex;
}
@media (max-width: 768px) {
  .topPagePiclayut4 img:nth-child(1) {
    width: 25vw;
    height: 13vh;
  }
}
.topPagePiclayut5 {
  width: 20vw;
  height: 39vh;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
}
@media (max-width: 768px) {
  .topPagePiclayut5 {
    width: 40vw;
    height: 26vh;
    flex-direction: row;
  }
  .topPagePiclayut5 img:nth-child(1) {
    width: 40vw;
    height: 13vh;
  }
  .topPagePiclayut5 img:nth-child(2) {
    width: 40vw;
    height: 13vh;
  }
  .topPagePiclayut5 img:nth-child(3) {
    width: 20vw;
    height: 6.5vh;
    display: none;
  }
  .topPagePiclayut5 img:nth-child(4) {
    width: 20vw;
    height: 6.5vh;
    display: none;
  }
  .topPagePiclayut5 img:nth-child(5) {
    width: 20vw;
    height: 6.5vh;
    display: none;
  }
  .topPagePiclayut5 img:nth-child(6) {
    width: 20vw;
    height: 6.5vh;
    display: none;
  }
}
.topPagePiclayut6 {
  display: flex;
  flex-wrap: wrap;
  width: 20vw;
}
.topPagePiclayut7 {
  display: flex;
  flex-wrap: wrap;
  width: 30vw;
}
.topPagePic1 {
  width: 20vw;
  height: 26vh;
  object-fit: cover;
  outline: 1px solid white;
  outline-offset: -1px;
}
.topPagePic2 {
  width: 10vw;
  height: 13vh;
  object-fit: cover;
  outline: 1px solid white;
  outline-offset: -1px;
}
.topPagePic3 {
  width: 30vw;
  height: 39vh;
  object-fit: cover;
  outline: 1px solid white;
  outline-offset: -1px;
}
.topPagePic4 {
  width: 20vw;
  height: 52vh;
  object-fit: cover;
  outline: 1px solid white;
  outline-offset: -1px;
}
.topPagePic5 {
  width: 20vw;
  height: 26vh;
  object-fit: cover;
  outline: 1px solid white;
  outline-offset: -1px;
}
.topPagePic6 {
  width: 20vw;
  height: 13vh;
  object-fit: cover;
  outline: 1px solid white;
  outline-offset: -1px;
}
@media (max-width: 768px) {
  .topPagePic7 {
    width: 50vw;
    height: 13vh;
  }
}
.top_h2 {
  width: 100%;
  color: #00633d;
  font-size: 180%;
  margin-top: -0.5vw;
  text-align: justify;
  text-align-last: justify;
}
@media (max-width: 768px) {
  .top_h2 {
    margin-top: 3vw;
    font-size: 280%;
  }
}
.top_blog_frame {
  position: absolute;
  background: white;
  right: 5vw;
  top: 57vh;
  width: 40vw;
  height: 26vh;
  outline: 1.5px solid #00633d;
  outline-offset: -4px;
  display: flex;
  flex-direction: column;
  justify-content: space-around;
}
.top_blog_frame h3 {
  color: #00633d;
  margin: 1.5vw 0 1vw 0;
  font-size: 120%;
  line-height: 1;
}
.top_blog_frame h4 {
  margin: 0;
  font-size: 100%;
  line-height: 1;
  font-weight: 400;
}
.top_blog_frame h4 span {
  font-size: 80%;
  margin-left: 1vw;
  font-weight: 300;
}
.top_blog_frame p {
  margin: 0.5vw 0;
  font-size: 90%;
  line-height: 1.6;
  text-align: justify;
  padding: 0 1.5vw;
  letter-spacing: 0;
}
.top_blog_frame a {
  font-size: 90%;
  color: #00633d;
  margin: 0 0 2vw 0;
  line-height: 1;
}
@media (max-width: 768px) {
  .top_blog_frame {
    position: relative;
    top: 0;
    width: 90vw;
    height: auto;
    margin-left: 5vw;
  }
  .top_blog_frame h3 {
    font-size: 250%;
    margin: 2vw 0;
  }
  .top_blog_frame h4 {
    font-size: 230%;
  }
  .top_blog_frame p {
    font-size: 200%;
    margin: 0 1vw;
    margin: 2vw 0;
  }
  .top_blog_frame a {
    font-size: 200%;
  }
}
.sec2frame {
  display: flex;
  align-items: center;
  gap: 3vw;
}
.sec2frame .sec2frame_left {
  z-index: 2;
}
.sec2frame .sec2frame_left h3 {
  font-size: 120%;
  line-height: 1.6;
  font-weight: 400;
  letter-spacing: 0.3vw;
  background-color: rgba(255, 255, 255, 0.8);
  text-align: justify;
  margin-top: 4vw;
}
@media (max-width: 768px) {
  .sec2frame .sec2frame_left h3 {
    font-size: 230%;
  }
}
.sec2frame .sec2_img {
  width: 20vw;
  height: 32vw;
  object-fit: cover;
  margin-right: -3vw;
  position: relative;
  border-radius: 0.7vw;
  filter: drop-shadow(0.1vw 0.1vw 1vw rgba(0, 0, 0, 0.4));
}
@media (max-width: 768px) {
  .sec2frame .sec2_img {
    margin: 5vw 0 0 0;
  }
}
.sec2frame .sec2_img2 {
  width: 22vw;
  height: 20vw;
  object-fit: cover;
  margin-top: -5vw;
  margin-left: -3vw;
  position: relative;
  border-radius: 0.7vw;
  filter: drop-shadow(0.1vw 0.1vw 1vw rgba(0, 0, 0, 0.4));
}
@media (max-width: 768px) {
  .sec2frame .sec2_img2 {
    width: 20vw;
    margin: 5vw 0 0 0;
  }
}
.sec2frame .sec2_img3 {
  width: 22vw;
  height: 18vw;
  object-fit: cover;
  margin-left: -2vw;
  margin-top: 15vw;
  position: relative;
  border-radius: 0.7vw;
  filter: drop-shadow(0.1vw 0.1vw 1vw rgba(0, 0, 0, 0.4));
}
@media (max-width: 768px) {
  .sec2frame .sec2_img3 {
    width: 20vw;
    margin: 5vw 0 0 0;
  }
}
.sec2_2frame {
  margin-top: 5vw;
  display: flex;
  gap: 3vw;
  align-items: center;
}
@media (max-width: 768px) {
  .sec2_2frame {
    flex-direction: column;
  }
}
.sec2_2frame .sec2_2frame_name {
  writing-mode: vertical-rl;
  color: #00633d;
  font-size: 300%;
  letter-spacing: 4vw;
  font-weight: 600;
  margin: 0;
  text-align: justify;
  text-align-last: justify;
}
@media (max-width: 768px) {
  .sec2_2frame .sec2_2frame_name {
    order: 1;
    writing-mode: horizontal-tb;
    font-size: 350%;
  }
}
.sec2_2frame .sec2_2frame_middle {
  width: 35.5vw;
  color: #00633d;
  text-align: justify;
  position: relative;
  padding: 2vw;
  line-height: 1.7;
}
@media (max-width: 768px) {
  .sec2_2frame .sec2_2frame_middle {
    order: 3;
    width: 100%;
    font-size: 250%;
    padding: 3vw;
  }
}
.sec2_2frame .sec2_2frame_middle::before {
  position: absolute;
  width: 5vw;
  height: 3vw;
  content: "";
  border-left: solid 2px;
  border-top: solid 2px;
  top: 0;
  left: 0;
}
.sec2_2frame .sec2_2frame_middle::after {
  position: absolute;
  width: 5vw;
  height: 3vw;
  content: "";
  border-right: solid 2px;
  border-bottom: solid 2px;
  bottom: 0;
  right: 0;
}
.sec2_2frame .sec2_2frame_third {
  width: 42.5vw;
  position: relative;
}
@media (max-width: 768px) {
  .sec2_2frame .sec2_2frame_third {
    order: 2;
    width: 100%;
  }
}
.sec2_2frame .sec2_2frame_third img {
  width: 100%;
  border-radius: 50%;
  filter: brightness(70%);
  filter: drop-shadow(0.1vw 0.1vw 1vw rgba(0, 0, 0, 0.4));
}
@media (max-width: 768px) {
  .sec2_2frame .sec2_2frame_third img {
    filter: brightness(90%);
  }
}
.sec2_2frame .sec2_2frame_third p {
  position: absolute;
  bottom: 8vw;
  left: 0;
  font-size: 72%;
  color: white;
  text-align: justify;
  width: 80%;
  margin-left: 5vw;
  line-height: 1.5;
}
.sec2_2frame .sec2_2frame_third p span {
  font-size: 170%;
}
@media (max-width: 768px) {
  .sec2_2frame .sec2_2frame_third p {
    position: relative;
    color: black;
    font-size: 230%;
    margin-left: 0;
    letter-spacing: 0.2vw;
    bottom: 0;
    line-height: 1.7;
    width: 100%;
  }
}
.swiper-wrapper {
  transition-timing-function: linear;
}
.swiper-wrapper .swiper_img img {
  width: 19vw;
  height: 19vw;
  object-fit: cover;
}
@media (max-width: 768px) {
  .swiper-wrapper .swiper_img img {
    width: 28vw;
    height: 28vw;
  }
}
.top_vegetables {
  margin-top: 5vw;
  color: #00633d;
  font-size: 200%;
  letter-spacing: 1vw;
}
@media (max-width: 768px) {
  .top_vegetables {
    font-size: 450%;
  }
}
.sec3_frame {
  display: flex;
  width: 100%;
  align-items: center;
  gap: 2vw;
}
@media (max-width: 768px) {
  .sec3_frame {
    flex-direction: column;
  }
}
.sec3_frame .sec3_frame_left, .sec3_frame .sec3_frame_right {
  width: 45vw;
}
@media (max-width: 768px) {
  .sec3_frame .sec3_frame_left, .sec3_frame .sec3_frame_right {
    width: 100%;
  }
}
.sec3_frame .sec3_frame_left img, .sec3_frame .sec3_frame_right img {
  width: 100%;
  height: auto;
  border-radius: 0.7vw;
}
.sec3_frame .sec3_frame_left p, .sec3_frame .sec3_frame_right p {
  margin: 0;
}
@media (max-width: 768px) {
  .sec3_frame .sec3_frame_left p, .sec3_frame .sec3_frame_right p {
    font-size: 180%;
  }
}
@media (max-width: 768px) {
  .sec3_frame .sec3_frame_left a, .sec3_frame .sec3_frame_right a {
    font-size: 180%;
  }
}
.sec3_frame .sec3_frame_left img {
  filter: drop-shadow(0.1vw 0.1vw 1vw rgba(0, 0, 0, 0.4));
}
.sec3_frame .sec3_p {
  font-size: 80%;
  text-align: justify;
  line-height: 1.5;
}
.contact_btn {
  margin-top: 10vw;
  width: 60vw;
  height: 5vw;
  padding: 0 5vw 0 5vw;
  background-color: #00633d;
  color: white;
  border-radius: 1vw;
  border-style: none;
  font-size: 140%;
  text-align: justify;
  text-align-last: justify;
  cursor: pointer;
  filter: drop-shadow(0vw 0.5vw 0.4vw rgba(0, 0, 0, 0.6));
  transition: 0.2s cubic-bezier(0.45, 0, 0.55, 1);
}
.contact_btn:hover {
  margin-top: 10.5vw;
  margin-bottom: -0.5vw;
  filter: drop-shadow(0vw 0vw 0.4vw rgba(0, 0, 0, 0));
}
@media (max-width: 768px) {
  .contact_btn {
    width: 100%;
    font-size: 240%;
    padding: 2vw 5vw;
    height: auto;
    border-radius: 3vw;
  }
}
.takanashi_logo3 {
  margin-top: 6vw;
  width: 100%;
}
.takanashi_logo3 img {
  width: 18vw;
  text-align: center;
}
@media (max-width: 768px) {
  .takanashi_logo3 img {
    width: 40vw;
  }
}
.vegetables_h1 {
  color: #00633d;
}
@media (max-width: 768px) {
  .vegetables_h1 {
    font-size: 350%;
    letter-spacing: 2vw;
  }
}
.vegetables_ul {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  padding: 0;
  gap: 3%;
  justify-content: center;
}
.vegetables_ul li {
  width: 30%;
}
@media (max-width: 768px) {
  .vegetables_ul li {
    width: 47%;
  }
}
.vegetables_ul li img {
  width: 28vw;
  height: 28vw;
  object-fit: cover;
}
@media (max-width: 768px) {
  .vegetables_ul li img {
    width: 42vw;
    height: 42vw;
  }
}
.vegetables_ul li h3 {
  margin: 0;
  line-height: 1;
}
@media (max-width: 768px) {
  .vegetables_ul li h3 {
    font-size: 200%;
  }
}
.vegetables_ul li p {
  margin: 1vw 0 3vw 0;
  line-height: 1;
  font-weight: 400;
  font-size: 90%;
}
@media (max-width: 768px) {
  .vegetables_ul li p {
    font-size: 150%;
  }
}
.post_pagination ul {
  list-style: none;
  display: flex;
  justify-content: center;
  gap: 3vw;
  padding: 0;
}
.post_pagination ul li {
  background-color: #00633d;
  color: yellow;
  border-radius: 50%;
  border: 1px solid #00633d;
  font-size: 150%;
  width: 5vw;
  height: 5vw;
}
@media (max-width: 768px) {
  .post_pagination ul li {
    width: 8vw;
    height: 8vw;
    font-size: 260%;
  }
}
.post_pagination ul li a {
  color: white;
}
.blog_ul {
  list-style: none;
  padding: 0;
}
.blog_ul .blog_li {
  display: flex;
  border-bottom: 1px solid #00633d;
  margin-bottom: 3vw;
  gap: 2vw;
  align-items: center;
}
.blog_ul .blog_li div {
  text-align: left;
  padding-bottom: 2vw;
}
.blog_ul .blog_li div h3 {
  margin: 0 0 2vw 0;
  line-height: 1.3;
  font-size: 150%;
  color: #00633d;
}
@media (max-width: 768px) {
  .blog_ul .blog_li div h3 {
    font-size: 250%;
  }
}
.blog_ul .blog_li div h5 {
  margin: 1vw 0;
  line-height: 1;
}
@media (max-width: 768px) {
  .blog_ul .blog_li div h5 {
    font-size: 150%;
  }
}
.blog_ul .blog_li div p {
  margin: 0;
  line-height: 1.6;
}
@media (max-width: 768px) {
  .blog_ul .blog_li div p {
    font-size: 200%;
    line-height: 1.8;
  }
}
.blog_ul .blog_li div .blog_a {
  text-align: right;
}
.blog_ul .blog_li div .blog_a a {
  color: #00633d;
}
.blog_ul .blog_li img {
  width: 15vw;
  height: 15vw;
  object-fit: cover;
}
@media (max-width: 768px) {
  .blog_ul .blog_li img {
    width: 35vw;
    height: 35vw;
  }
}
.blog_wrapper h1 {
  color: #00633d;
}
@media (max-width: 768px) {
  .blog_wrapper h1 {
    font-size: 350%;
    letter-spacing: 1vw;
  }
}
@media (max-width: 768px) {
  .blog_wrapper .blog_date {
    font-size: 250%;
  }
}
.blog_wrapper .blog_thumnail img {
  margin: 2vw 0;
  width: 50%;
  height: auto;
}
@media (max-width: 768px) {
  .blog_wrapper .blog_thumnail img {
    width: 100%;
  }
}
.blog_wrapper .blog_text p {
  text-align: justify;
  font-size: 120%;
  padding: 0 5vw;
}
@media (max-width: 768px) {
  .blog_wrapper .blog_text p {
    font-size: 250%;
    padding: 0;
  }
}
.blog_wrapper .blog_text img {
  margin: 2vw 0;
  width: 50%;
  height: auto;
  margin-left: 25%;
}
@media (max-width: 768px) {
  .blog_wrapper .blog_text img {
    width: 100%;
    margin: 5vw 0;
  }
}
.blog_wrapper .blog_text a {
  color: #00633d;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  cursor: pointer;
  text-decoration: none;
  display: inline-block;
  position: relative;
}
.blog_wrapper .blog_text a::after {
  content: "";
  width: 0%;
  height: 1px;
  display: block;
  background: #00633d;
  transition: all 0.2s linear;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.blog_wrapper .blog_text a:hover::after {
  width: 100%;
}
.aboutUsWrapper h1 {
  color: #00633d;
}
@media (max-width: 768px) {
  .aboutUsWrapper h1 {
    font-size: 350%;
    letter-spacing: 2vw;
  }
}
.aboutUsWrapper .aboutUs3 {
  display: flex;
  gap: 5vw;
  margin-top: 5vw;
  align-items: center;
}
@media (max-width: 768px) {
  .aboutUsWrapper .aboutUs3 {
    flex-direction: column;
  }
}
.aboutUsWrapper .aboutUs3 .aboutUs3_left {
  width: 50%;
}
@media (max-width: 768px) {
  .aboutUsWrapper .aboutUs3 .aboutUs3_left {
    width: 100%;
    order: 2;
  }
}
.aboutUsWrapper .aboutUs3 .aboutUs3_left img {
  width: 100%;
  filter: drop-shadow(0.1vw 0.1vw 1vw rgba(0, 0, 0, 0.4));
}
.aboutUsWrapper .aboutUs3 div {
  width: 50%;
  text-align: justify;
  font-size: 90%;
}
@media (max-width: 768px) {
  .aboutUsWrapper .aboutUs3 div {
    width: 100%;
    font-size: 250%;
    order: 1;
  }
}
.aboutUsWrapper .aboutUs3 div h3 {
  color: #00633d;
  font-size: 130%;
  text-align: center;
}
@media (max-width: 768px) {
  .aboutUsWrapper .aboutUs3 div h3 {
    font-size: 150%;
  }
}
.aboutUsWrapper .aboutUs3 div a {
  color: #00633d;
}
.aboutUsWrapper .store_sec1 {
  display: flex;
  gap: 5vw;
  margin-top: 5vw;
  justify-content: center;
  align-items: center;
}
@media (max-width: 768px) {
  .aboutUsWrapper .store_sec1 {
    flex-direction: column;
  }
}
.aboutUsWrapper .store_sec1 img {
  width: 45%;
}
@media (max-width: 768px) {
  .aboutUsWrapper .store_sec1 img {
    width: 100%;
  }
}
.aboutUsWrapper .store_sec1 div {
  width: 55%;
}
@media (max-width: 768px) {
  .aboutUsWrapper .store_sec1 div {
    width: 100%;
  }
}
.aboutUsWrapper .store_sec1 div h3 {
  text-align: justify;
}
@media (max-width: 768px) {
  .aboutUsWrapper .store_sec1 div h3 {
    font-size: 270%;
  }
}
.aboutUsWrapper .store_sec1 div p {
  font-size: 110%;
  font-weight: 400;
}
@media (max-width: 768px) {
  .aboutUsWrapper .store_sec1 div p {
    font-size: 250%;
  }
}
.aboutUsWrapper iframe {
  width: 100%;
  height: 40vw;
  margin-top: 5vw;
}
@media (max-width: 768px) {
  .aboutUsWrapper iframe {
    height: 80vw;
    margin-top: 10vw;
  }
}
@media (max-width: 768px) {
  .aboutUsWrapper .gmap_caption {
    font-size: 250%;
  }
}
.aboutUs4 {
  margin-top: 5vw;
}
@media (max-width: 768px) {
  .aboutUs4 {
    margin-top: 10vw;
  }
}
.aboutUs4 h3 {
  color: #00633d;
}
@media (max-width: 768px) {
  .aboutUs4 h3 {
    font-size: 300%;
  }
}
.contact_content .contact_p {
  text-align: center;
  padding: 2vw;
}
.contact_form {
  display: flex;
  justify-content: center;
  margin: 2vw;
}
@media (max-width: 768px) {
  .contact_form {
    flex-wrap: wrap;
    margin: 5vw 2vw;
  }
}
.contact_form h4 {
  width: 20%;
  text-align: left;
  font-size: 100%;
  margin: 2vw 2vw 2vw 0;
  text-align-last: justify;
  font-weight: 400;
}
@media (max-width: 768px) {
  .contact_form h4 {
    font-size: 250%;
  }
}
.contact_form h4 span {
  display: block;
  font-size: 90%;
}
@media (max-width: 768px) {
  .contact_form h4 span {
    display: inline-block;
  }
}
@media (max-width: 768px) {
  .contact_form h4 {
    width: 100%;
    margin: 0;
    text-align-last: auto;
  }
}
.contact_form h5 {
  font-weight: 400;
  width: 8%;
  text-align: center;
  font-size: 90%;
  margin: 2vw 2%;
  height: 2.7027027027vw;
}
@media (max-width: 768px) {
  .contact_form h5 {
    width: 15%;
    height: 6.25vw;
    margin: 2vw 0 0 0;
    font-size: 200%;
  }
}
.contact_form p {
  width: 70%;
  font-size: 85%;
  text-align: justify;
}
@media (max-width: 768px) {
  .contact_form p {
    width: 70%;
    margin: 2% 0 0 5%;
  }
}
.contact_form input {
  width: 100%;
  height: 3.3333333333vw;
  margin-top: 0.2vw;
  font-size: 120%;
}
@media (max-width: 768px) {
  .contact_form input {
    height: 5vw;
    margin-top: 0;
  }
}
.contact_form textarea {
  width: 100%;
  margin-top: 0.2vw;
  font-size: 110%;
}
.contact_form .must {
  background: #00633d;
  color: white;
  padding: 0.2vw 1vw;
  border-radius: 3px;
}
@media (max-width: 768px) {
  .contact_form .must {
    padding: 0;
  }
}
.contact_form .option {
  background: white;
  color: #00633d;
  border: 1px solid #00633d;
  padding: 0.2vw 1vw;
  border-radius: 3px;
}
@media (max-width: 768px) {
  .contact_form .option {
    padding: 0;
  }
}
.post {
  align-items: flex-start;
}
.post h4 span {
  font-size: 60%;
  color: #00633d;
  line-height: 1.6;
}
@media (max-width: 768px) {
  .post h4 span {
    margin-left: 1vw;
  }
}
.post p {
  display: flex;
  align-items: center;
  gap: 1vw;
}
.post input {
  width: 20vw;
  height: 3.3333333333vw;
  margin-top: 0.2vw;
  font-size: 110%;
}
@media (max-width: 768px) {
  .post input {
    height: 5vw;
    margin-top: 0;
  }
}
.contact_agree {
  margin-bottom: 5vw;
  position: relative;
  text-align: center;
}
.contact_agree a {
  font-size: 100%;
  position: relative;
  display: inline-block;
  color: #00633d;
}
.contact_agree a::after {
  content: "";
  width: 0%;
  height: 1px;
  display: block;
  background: #00633d;
  transition: all 0.2s linear;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
.contact_agree a:hover::after {
  width: 100%;
}
.contact_agree input[type="checkbox"] {
  width: 2vw;
}
@media (max-width: 768px) {
  .contact_agree input[type="checkbox"] {
    width: 5vw;
  }
}
.contact_agree label span {
  width: 70vw !important;
  font-size: 90%;
  letter-spacing: 0;
}
@media (max-width: 768px) {
  .contact_agree label span {
    font-size: 180%;
    width: 70vw !important;
  }
}
.wpcf7-spinner {
  width: 0;
}
.wpcf7-response-output {
  margin: 3vw 10vw !important;
  font-size: 150%;
  color: red;
  border-color: red !important;
}
input[type="submit"] {
  width: 60%;
  height: 5vw;
  background: #00633d;
  color: white;
  border-style: none;
  border-radius: 5px;
  filter: drop-shadow(0px 2px 1px gray);
  transition: 0.2s;
  font-size: 120%;
  margin-left: 15vw;
}
@media (max-width: 768px) {
  input[type="submit"] {
    font-size: 250%;
    letter-spacing: 5vw;
    width: 80%;
    height: 10vw;
    margin-left: 0vw;
  }
}
.wpcf7-list-item {
  margin: 0;
}
label {
  display: flex;
  align-items: center;
}
label input[type="radio"] {
  width: 2vw;
}
@media (max-width: 768px) {
  label input[type="radio"] {
    width: 5vw;
  }
}
label span {
  padding-left: 1vw;
  text-align: left;
  width: 15vw;
  font-size: 150%;
}
@media (max-width: 768px) {
  label span {
    width: 20vw;
  }
}
input[type="submit"]:hover {
  filter: drop-shadow(0px 3px 1px gray);
}
input[type="submit"]:active {
  filter: drop-shadow(0px 0px 0px gray);
}
.privacy_text {
  text-align: justify;
}
@media (max-width: 768px) {
  .privacy_text {
    font-size: 250%;
  }
}
.footer_container {
  background-color: #00633d;
  color: #fff;
  text-align: center;
}
.footer_container .footer_frame {
  display: flex;
  padding: 0 5vw;
  align-items: center;
}
@media (max-width: 768px) {
  .footer_container .footer_frame {
    flex-direction: column;
  }
}
.footer_container .footer_frame .footer_logo {
  width: 20vw;
}
@media (max-width: 768px) {
  .footer_container .footer_frame .footer_logo {
    width: 60vw;
    margin-top: 10vw;
  }
}
.footer_container .footer_frame ul {
  list-style: none;
  text-align: justify;
  display: flex;
  gap: 3vw;
}
@media (max-width: 768px) {
  .footer_container .footer_frame ul {
    flex-wrap: wrap;
    padding: 0;
    gap: 1vw 8vw;
    line-height: 1.8;
    justify-content: center;
    margin: 5vw;
  }
}
.footer_container .footer_frame ul a {
  color: white;
}
@media (max-width: 768px) {
  .footer_container .footer_frame ul a {
    font-size: 280%;
  }
}
.footer_container .footer_frame .sns_area ul {
  display: flex;
  align-items: center;
  gap: 2vw;
}
@media (max-width: 768px) {
  .footer_container .footer_frame .sns_area ul {
    gap: 8vw;
    margin: 0;
  }
}
.footer_container .footer_frame .sns_area img {
  width: 2vw;
}
@media (max-width: 768px) {
  .footer_container .footer_frame .sns_area img {
    width: 6vw;
  }
}
.footer_container .footer_frame .sns_area .footer_googlemap {
  width: 1.5vw;
}
@media (max-width: 768px) {
  .footer_container .footer_frame .sns_area .footer_googlemap {
    width: 4.5vw;
  }
}
.footer_container .footer_credit {
  font-size: 90%;
}
@media (max-width: 768px) {
  .footer_container .footer_credit {
    font-size: 220%;
    margin: 2vw 0;
  }
}
.visible, .invisible {
  opacity: 0;
  transition: opacity 1s ease;
}
.visible {
  opacity: 1;
}
.visible.translateY, .invisible.translateY {
  transform: translateY(100px);
  transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.visible.translateY {
  transform: translateY(0);
}
.visible.translateX, .invisible.translateX {
  transform: translateX(-80%);
  transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.visible.translateX {
  transform: translateX(0);
}
.visible.translateX2, .invisible.translateX2 {
  overflow: hidden;
  transform: translateX(80%);
  transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.translateX3 {
  transform: translateX(20%);
  transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.visible.translateX2 {
  transform: translateX(0);
}
.visible.scaleWidth, .invisible.scaleWidth {
  transform: scale(0, 0);
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.visible.scaleWidth {
  transform: scale(1, 1);
}
.fadeOpacity {
  animation-name: fadeOpacityAnime;
  animation-duration: 3s;
  animation-fill-mode: forwards;
  opacity: 0;
}
@keyframes fadeOpacityAnime {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.fadeSideLR {
  animation-name: fadeSideLRanime;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  opacity: 0;
}
@keyframes fadeSideLRanime {
  from {
    opacity: 0;
    transform: translateX(-300px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeSideRL {
  animation-name: fadeSideRLanime;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  opacity: 0;
}
@keyframes fadeSideRLanime {
  from {
    opacity: 0;
    transform: translateX(300px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeDown {
  animation-name: fadeDownAnime;
  animation-duration: 1.3s;
  animation-fill-mode: forwards;
  opacity: 0;
}
@keyframes fadeDownAnime {
  from {
    opacity: 0;
    transform: translateY(-100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
  opacity: 0;
}
.fadeUp2 {
  animation-name: fadeUpAnime;
  animation-duration: 1s;
  animation-fill-mode: forwards;
  opacity: 0;
}
.fadeUp3 {
  animation-name: fadeUpAnime;
  animation-duration: 1.5s;
  animation-fill-mode: forwards;
  opacity: 0;
}
@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeScale {
  animation-name: fadeScale;
  animation-duration: 0.2s;
  animation-fill-mode: forwards;
  opacity: 0;
}
@keyframes fadeScale {
  from {
    opacity: 0;
    transform: scale(0);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}
.pc_appear {
  display: block;
}
@media (max-width: 768px) {
  .pc_appear {
    display: none;
  }
}
.pc_appear2 {
  display: flex;
}
@media (max-width: 768px) {
  .pc_appear2 {
    display: none;
  }
}
.sp_appear {
  display: none;
}
@media (max-width: 768px) {
  .sp_appear {
    display: block;
  }
}
