@charset "UTF-8";
/*
Theme Name: 株式会社牧野農園
Description: 株式会社牧野農園のテーマ
Author: M.Ueda
Version: 1.0
*/
body {
  font-family: serif;
  background-color: #DECBA0;
}

a {
  text-decoration: none;
}

li {
  list-style: none;
}

/*----------共通CSS----------*/
.mobile_br {
  display: none;
}
@media (width < 431px) {
  .mobile_br {
    display: block;
  }
}

.small_title {
  font-size: 20px;
  color: #B55A21;
}

/*縦書き*/
.vertical {
  writing-mode: vertical-rl;
}
@media (width < 431px) {
  .vertical {
    writing-mode: horizontal-tb;
    text-align: center;
  }
}

/*もっと見るボタン*/
.btn_link {
  color: #B55A21;
  font-size: 20px;
  font-weight: bold;
  transition: 0.5s all;
}
.btn_link:hover{
	color: #FFB688;
}
@media (width < 431px) {
	.btn_link {
		font-size: 16px;
	}
}
.btn_polygon {
  padding-left: 10px;
}

/*ロゴ*/
.logo {
  display: flex;
  align-items: center;
}
.logo .font_small {
  font-size: 14px;
  letter-spacing: 0;
}
.logo h2 {
  font-size: 30px;
  line-height: 2rem;
  letter-spacing: 0.8rem;
}

/*セクション区切り*/
.wrap {
  overflow: hidden;
}

.content01 {
  background: #F2EBD1;
  border-top-left-radius: 50%;
  border-top-right-radius: 50%;
  height: 200px;
  margin-left: -100px;
  margin-right: -100px;
  padding-left: 100px;
  padding-right: 100px;
}
@media (width < 769px) {
  .content01 {
    height: 100px;
  }
}
@media (width < 431px) {
  .content01 {
    height: 70px;
  }
}

.content02 {
  background: #F2EBD1;
  border-bottom-left-radius: 1000px 200px;
  border-bottom-right-radius: 1000px 200px;
  height: 200px;
  margin-left: -100px;
  margin-right: -100px;
  padding-left: 100px;
  padding-right: 100px;
}
@media (width < 769px) {
  .content02 {
    height: 100px;
  }
}
/*エントリーボタン*/
#entryButton {
  position: fixed;
  right: 0%;
  bottom: 25%;
  width: 160px;
  height: 160px;
  text-align: center;
  line-height: 160px;
  font-size: 18px;
  transition: width 0.3s, height 0.3s, opacity 0.3s;
  z-index: 1000;
  opacity: 0; /* 初期状態で非表示 */
  pointer-events: none; /* 初期状態でクリック不可 */
}
#entryButton img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
@media (width < 769px) {
  #entryButton {
      width: 100px;
	  height: 100px;
  }
}
@media (width < 431px) {
  #entryButton {
  opacity: 1;
  pointer-events: pointer;
  }
}



/*----------ヘッダー----------*/
header .pc_header {
  width: 100%;
  margin: 0 auto;
  max-width: 769px;
  padding: 15px 0;
}
@media (width < 1101px) {
  header .pc_header {
    display: none;
  }
}
header ul {
  display: flex;
  justify-content: space-around;
}
header a {
  color: #000;
}
header a:hover{
	color: #F2EBD1;
}

.mobile_nav {
  height: 80px;
  display: none;
}
@media (width < 1101px) {
  .mobile_nav {
    display: block;
  }
}

.header__container {
  display: flex;
  justify-content: right;
  padding-right: 3%;
}

/* ===============================================
ハンバーガーボタンのスタイリング
=============================================== */
.hamburger {
  position: fixed;
  width: 50px;
  height: 80px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding: 0;
  margin: 0;
  cursor: pointer;
  z-index: 550;
}

.hamburger span,
.hamburger span::after,
.hamburger span::before {
  position: absolute;
  display: block;
  content: "";
  width: 100%;
  height: 3px;
  background-color: #F2EBD1;
  transition: all 0.5s;
}

.hamburger span::before {
  top: -10px;
}

.hamburger span::after {
  bottom: -10px;
}

.hamburger.open span {
  background-color: transparent;
}

.hamburger.open span::before {
  top: 0;
  transform: rotate(45deg);
}

.hamburger.open span::after {
  bottom: 0;
  transform: rotate(-45deg);
}

/* ===============================================
メニューのスタイリング
=============================================== */
.nav {
  position: fixed;
  width: 100%;
  height: 100vh;
  top: 0;
  right: -120%;
  background-color: #643213;
  opacity: 0.9;
  padding: 50px 0;
  transition: all 0.5s;
  z-index: 500;
}

.nav__list {
  display: block;
}

.nav__item a {
  display: block;
  font-size: 20px;
  color: #fff;
  text-decoration: none;
  padding: 20px 0 20px 50px;
  text-transform: uppercase;
}

.nav__item a:hover {
  color: #0f5474;
  background-color: #fff;
}

.nav.open {
  right: 0;
}

/*----------ファーストビュー----------*/
.hero {
  background-color: #DECBA0;
  padding-bottom: 5%;
}
@media (width < 431px) {
  .hero {
    padding-bottom: 0%;
  }
}
.hero .hero_inner {
  position: relative;
  background-image: url(img/hokkaido.png);
  background-position: 17% 0%;
  background-repeat: no-repeat;
  background-size: 32%;
}
@media (width < 769px) {
  .hero .hero_inner {
    background-size: 40%;
  }
}
@media (width < 731px) {
  .hero .hero_inner {
    background-size: 80%;
  }
}
.hero .hero_wrapper {
  max-width: 1101px;
  margin: 0 auto;
}
.hero .fv_top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10% 5% 12% 5%;
}
@media (width < 1441px) {
  .hero .fv_top {
    padding: 10% 5% 7% 5%;
  }
}
@media (width < 1101px) {
  .hero .fv_top {
    padding: 7%;
  }
}
@media (width < 731px) {
  .hero .fv_top {
    padding: 5% 3% 15% 3%;
    display: block;
  }
}
.hero .fv_title h1 {
  font-size: 55px;
  letter-spacing: 0.5rem;
  width: 100%;
  white-space: nowrap;
}
@media (width < 1101px) {
  .hero .fv_title h1 {
    font-size: 40px;
  }
}
@media (width < 431px) {
  .hero .fv_title h1 {
    padding: 5% 0 10px 0;
	overflow-x: hidden;
  }
}
.hero .logo {
  justify-content: flex-end;
}
.hero .logo img {
  width: 30%;
}
@media (width < 731px) {
  .hero .logo img {
    width: 20%;
  }
}
.hero .logo .font_small {
  font-size: 14px;
  letter-spacing: 0;
}
@media (width < 431px) {
  .hero .logo .font_small {
    font-size: 12px;
  }
}
.hero .logo h2 {
  font-size: 30px;
  line-height: 2rem;
  letter-spacing: 0.8rem;
}
@media (width < 431px) {
  .hero .logo h2 {
    font-size: 23px;
    line-height: 1.5rem;
  }
}

/*ファーストビュー・スライドショー*/
@media (width < 431px) {
  .swiper-slide {
    display: none;
  }
}
.swiper-slide img {
  width: 100%;
  height: 100%;
  margin: 0;
}

.sample-slider .swiper-wrapper {
  transition-timing-function: linear;
}

.fv_informationbtn {
  position: absolute;
  top: 45%;
  right: 23%;
  z-index: 100;
}
@media (width < 1441px) {
  .fv_informationbtn {
    right: 15%;
  }
}
@media (width < 1281px) {
  .fv_informationbtn {
    right: 10%;
  }
}
@media (width < 731px) {
  .fv_informationbtn {
    display: none;
  }
}
.fv_informationbtn .fv_onlineshopbtn {
  position: relative;
  width: 170px;
  height: 150px;
  background-color: #F2EBD1;
  border-radius: 47% 43% 51% 31%/46% 54% 36% 46%;
  transition: 0.5s all;
}
.fv_informationbtn .fv_onlineshopbtn:hover{
	background-color: #F9F7F0;
}
@media (width < 769px) {
  .fv_informationbtn .fv_onlineshopbtn {
    width: 120px;
    height: 100px;
  }
}
.fv_informationbtn .fv_onlineshopbtn a {
  color: #000;
}
.fv_informationbtn .fv_contactbtn {
  position: relative;
  width: 170px;
  height: 150px;
  margin-left: 100px;
  background-color: #B55A21;
  border-radius: 46% 54% 36% 46%/47% 43% 51% 31%;
  transition: 0.5s all;
}
.fv_informationbtn .fv_contactbtn:hover{
	background-color: #6A2900;
}
@media (width < 769px) {
  .fv_informationbtn .fv_contactbtn {
    width: 120px;
    height: 100px;
  }
}
.fv_informationbtn .fv_contactbtn a {
  color: #fff;
}
.fv_informationbtn a {
  font-weight: bold;
  width: 100%;
  text-align: center;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.about {
  background-color: #F2EBD1;
}
.about .about_inner {
  max-width: 1101px;
  margin: 0 auto;
  padding: 0 10px;
}
@media (width < 769px) {
  .about .about_inner {
    padding: 0 5%;
  }
}
@media (width < 431px) {
  .about .about_inner {
    padding: 0 3%;
  }
}
.about .about_top {
  display: flex;
  justify-content: space-between;
}
@media (width < 431px) {
  .about .about_top {
    display: block;
  }
}
.about .about_img {
  display: flex;
  width: 93%;
}
@media (width < 769px) {
  .about .about_img {
    width: 90%;
  }
}
@media (width < 431px) {
  .about .about_img {
    width: 100%;
  }
}
.about .about_img .about_mainimg img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.about .about_title h2 {
  font-size: 40px;
}
@media (width < 769px) {
  .about .about_title h2 {
    font-size: 30px;
  }
}
@media (width < 431px) {
  .about .about_title h2 {
    font-size: 25px;
  }
}
.about .about_title p {
  text-align: center;
}
.about .about_text {
  width: 100%;
  margin: 0 auto;
}
.about .about_text h2 {
  text-align: center;
  font-size: 30px;
  padding: 25px 0 25px 0;
}
@media (width < 769px) {
  .about .about_text h2 {
    font-size: 25px;
  }
}
@media (width < 431px) {
  .about .about_text h2 {
    font-size: 20px;
  }
}
.about .about_text p {
  line-height: 2.5rem;
  font-size: 18px;
}
@media (width < 431px) {
  .about .about_text p {
    font-size: 14px;
	line-height: 2rem;
  }
}
.about .about_text p + p {
  padding-top: 3%;
}

.products {
  background-color: #F2EBD1;
}
.products .products_inner {
  max-width: 1101px;
  margin: 0 auto;
  padding: 7% 10px;
}
.products .products_box {
  position: relative;
  background-color: #fff;
  border-radius: 50px;
  padding: 7% 7% 8% 7%;
}
@media (width < 431px) {
  .products .products_box {
    padding: 10% 7% 13% 7%;
  }
}
.products .products_title h2 {
  font-size: 45px;
}
@media (width < 769px) {
  .products .products_title h2 {
    font-size: 35px;
  }
}
@media (width < 431px) {
  .products .products_title h2 {
    font-size: 20px;
  }
}
.products .products_contents {
  width: 85%;
}
@media (width < 769px) {
  .products .products_contents {
    width: 100%;
  }
}
.products .products_contents p {
  font-size: 18px;
  line-height: 2rem;
  padding: 3% 0 5% 0;
}
@media (width < 431px) {
.products .products_contents p {
  font-size: 14px;
}
}
.products .products_img {
  width: 25%;
  position: absolute;
  right: 0;
  bottom: -15%;
}
@media (width < 431px) {
  .products .products_img {
    width: 40%;
    bottom: -12%;
  }
}
.products .products_img img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}

.news {
  max-width: 1281px;
  margin: 0 auto;
}
@media (width < 1281px) {
  .news {
    max-width: 1101px;
    padding: 0 10px;
  }
}
.news .news_inner {
  padding: 10% 0;
}
.news .news_box {
  background-color: #F2EBD1;
  border-radius: 50px;
  padding: 7% 5% 5% 5%;
  display: flex;
  justify-content: space-between;
}
@media (width < 431px) {
  .news .news_box {
    display: block;
	padding: 7% 5% 15% 5%;
  }
}
.news .news_title p {
  text-align: center;
}
.news .news_title h2 {
  font-size: 40px;
}
@media (width < 769px) {
  .news .news_title h2 {
    font-size: 30px;
  }
}
@media (width < 431px) {
  .news .news_title h2 {
    font-size: 25px;
  }
}
.news .news_contents {
  width: 85%;
  margin: 0 auto;
}
@media (width < 431px) {
  .news .news_contents {
    width: 100%;
  }
}
.news ul {
  width: 100%;
}
.news li {
  border-bottom: dashed 3px #B55A21;
  padding: 30px 0 5px 10px;
}
@media (width < 431px) {
  .news li {
    font-size: 14px;
  }
}
.news li a {
  color: #000;
}
.news .news_date {
  padding-right: 5%;
}
.news .morebtn {
  padding-top: 5%;
  text-align: right;
}
@media (width < 431px) {
  .news .morebtn {
    width: 100%;
  }
}

.company {
  max-width: 1101px;
  margin: 0 auto;
  padding: 0 10px;
}
.company .company_inner {
  padding: 10% 0;
}
.company a{
	color: #000;
}
@media (width < 1281px) {
  .company .company_inner {
    padding: 10% 0 7% 0;
  }
}
.company .company_titile {
  text-align: center;
}
.company .company_titile h2 {
  font-size: 40px;
}
@media (width < 769px) {
.company .company_titile h2 {
    font-size: 30px;
  }
}
@media (width < 431px) {
.company .company_titile h2 {
    font-size: 25px;
  }
}
.company .company_contents {
  padding: 5% 0;
}
.company table {
  border-collapse: collapse; /* セル枠を重ねて表示 */
  width: 100%;
  font-size: 18px;
}
.company td {
  border-bottom: solid 1px #B55A21;
  padding: 3% 0 15px 2%;
}
@media (width < 431px) {
	.company td{
		font-size: 14px;
	}
	.company .contents_title{
		white-space: nowrap;
	}
	.company .contents_more{
		padding-left: 30px;
		color: #000;
	}
}

footer {
  max-width: 1101px;
  margin: 0 auto;
  padding: 0 10px;
}
footer a {
	color: #000;
}
footer .footer_nav {
  display: flex;
  justify-content: space-around;
  width: 80%;
  margin: 0 auto;
}
@media (width < 1101px) {
	footer .footer_nav {
		width: 100%;
}
}
@media (width < 769px) {
	footer .footer_nav {
		display: block;
}
}

footer .footer_nav a {
  color: #000;
}
@media (width < 431px) {
	footer .footer_nav a {
		font-size: 14px;
	}
}
footer .footer_nav li {
  width: 100%;
  text-align: center;
}
footer .footer_nav li + li {
  border-left: solid 1px #000;
}
@media (width < 769px) {
footer .footer_nav li + li {
  border-left: none;
}
}
footer p {
  text-align: center;
  padding: 5% 0 2% 0;
}
@media (width < 431px) {
footer p {
	font-size: 12px;
}
}
footer .logo {
  justify-content: center;
  padding: 5% 0;
}
footer .logo img {
  width: 10%;
}
@media screen and (max-width: 431px) {
	footer .logo img {
		width: 20%;
	}
	.logo h2 {
		font-size: 23px;
		line-height: 1.5rem;
	}
	footer .logo .font_small {
    font-size: 12px;
  }
	.mobile_footernav{
		display: none;
	}
}


/*---------------ニュースページ---------------*/

.news-wrapper {
  padding: 0 5% 10% 5%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  background-color: #DECBA0;
}

.news-wrapper .box-white {
  padding: 26px 5% 50px;
}
.news-wrapper .main-content {
  width: 69%;
}
.news-wrapper .sidebar {
  width: 27%;
}

.news-title {
  font-size: 1.25rem;
  font-weight: bold;
  line-height: 2.25;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  padding: 0 0 5% 5%;
}
.is-style-regular tr:first-child{
	color: #fff;
	background-color: #607493;
}
@media screen and (max-width: 768px) {
  .news-title {
    font-size: 1.125rem;
  }
}


.sidebar .box-white {
  padding-right: 8.376%;
  padding-left: 8.376%;
}
.sidebar .item {
  padding: 0 3.773%;
  padding-bottom: 36px;
}
.sidebar .item:not(:last-of-type) {
  border-bottom: dashed 3px #B55A21;
  margin-bottom: 42px;
}
.sidebar-list {
  padding: 0 7.718%;
  font-weight: 500;
}
.sidebar-list a {
  display: inline-block;
  padding-right: 1em;
  line-height: 2.562;
  color: #000;
}
.sidebar-list a::before {
  content: "-";
  display: inline-block;
  margin-right: 0.5em;
}


.news-list {
	cursor: pointer;
	width: 100%;
	display: flex;
	flex-wrap:wrap;
	justify-content: space-between;
}

.news-list > li {
  width: 100%;
  margin: 0 5%;
  padding: 15px 0 5px 0;
  border-bottom: dashed 3px #B55A21;
}
.news-list > li:not(:last-of-type) {
  margin-bottom: 16px;
}
.news-list a {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-direction: column;
    column-gap: 0px;
}

.news-list .title{
	font-size: 1rem;
	padding: 1% 0;
	color: #000;
}
.news-list .text {
  flex: 1 1 0;
  line-height: 1.687;
}
.news-list .date {
  font-size: 0.8125rem;
  color: #000;
}

.box-white {
  padding: 60px 6.551% 92px;
  border-radius: 10px;
  color: #000;
  background-color: #F2EBD1;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

.thumb{
  height: 38vh;
  width: 100%;
  object-fit: cover;
}
/*個別ページ・タイトル・本文*/
.post-title{
	padding: 20px 0;
}
.post-wrapper p{
	line-height: 2;
	font-size: 1rem;
}
.post-wrapper h2 {
  padding: 0.5em;/*文字周りの余白*/
  margin: 10% 0 5% 0;
  color: #000;/*文字色*/
  border-left: solid 5px #B55A21;/*左線（実線 太さ 色）*/
  background: #F2EBD1;
}
.post-wrapper h3 {
  position: relative;
  padding: 0.8rem 0.5rem;
  margin: 3% 0% 5% 0;
  background: #F2EBD1;
}

.nomad {
  width: 65%;
  padding: .7em 1.5em;
  margin: 5% 0;
  color: #000;/*文字色*/
  /*線の種類（点線）2px 線色*/
  border: dashed 2px #FF62C4;
}
.nomad ol {
  margin: 0;
  padding: 5% 3%;
}
.nomad ol li {
  margin-bottom: 5px;
}
.wp-pagenavi {
  display: flex;
  justify-content: flex-end;
  margin-top: 10%;
}
.wp-pagenavi span, .wp-pagenavi a {
  background-color: #FCE8D4;
　border-radius: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  font-size: 0.9375rem;
}
.wp-pagenavi span:not(:last-child), .wp-pagenavi a:not(:last-child) {
  margin-right: 2.622%;
}
@media screen and (max-width: 768px) {
  .wp-pagenavi span, .wp-pagenavi a {
    font-size: 0.875rem;
  }
}
.wp-pagenavi span:hover, .wp-pagenavi a:hover {
  background-color: #F8E9DD;
  color: #000;
}
.wp-pagenavi span.current {
  background-color: #B55A21;
  color: #fff;
}
.wp-pagenavi a {
  color: #5C5C5C;
}
.wp-pagenavi a.nextpostslink, .wp-pagenavi a.previouspostslink {
  width: auto;
  padding: 5px 1.2em;
}
.wp-pagenavi .pages {
  display: none;
}
/*前・次・ページナビ*/
.page-nav a{
  display: inline-block;
  padding-top: 3%;
  color: #000;
}
.page-nav li:first-child{
	padding-top: 5%;
}
/*個別記事の画像*/
.post .eyecatch {
	width: 40vw;
	height: 40vh;
}
.post .eyecatch img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/*ニュースレスポンシブ*/
@media screen and (max-width: 768px) {
	.thumb{
        height: 33vh;
	}
	.news-wrapper{
		display: block;
	}
	.box-white{
		width: 80vw;
		margin-bottom: 10%;
	}
	.sidebar .box-white{
		width: 80vw;
	}
	.post-title{
		font-size: 20px;
	}
	.page-nav li{
		text-align: center;
	}
}
@media screen and (max-width: 430px) {
	.thumb{
        height: 20vh;
	}
	.news-wrapper{
		padding: 0 5% 15%;
	}
		.box-white{
		width: 90vw;
		margin-bottom: 15%;
	}
	.sidebar .box-white{
		width: 90vw;
		margin-bottom: 30%;
	}
	.post .eyecatch {
	width: 60vw;
	height: 30vh;
	margin: 0 auto;
	margin-bottom: 10%;
	}
}
/*ニュースページタイトル*/
.news_home_title {
	color: #000;
	padding: 10% 0 5% 10%;
	background-color: #DECBA0;
}
.news_home_title h1{
	font-size: 4rem;
}
.news_home_title p{
	font-size: 1.2rem;
	padding-left: 0.25rem;
}
@media screen and (max-width: 769px) {
	.news_home_title {
		padding: 25% 0 5% 10%;
}
	.news_home_title h1{
		font-size: 3.5rem;
}
	.news_home_title p{
		font-size: 1rem;
		padding-left: 0.25rem;
}
}
@media screen and (max-width: 431px){
	.news_home_title {
		padding: 15% 0 10% 10%;
}
	.news_home_title h1{
		font-size: 3rem;
}
}

/*お知らせ 画像調整*/

.wp-block-image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
/*banner設定*/
.banner_box{
	padding: 5% 0;
}
.banner_inner{
	max-width: 1100px;
	margin: 0 auto;
}
@media screen and (max-width: 1100px){
	.banner_inner{
		padding: 0 3%;
	}
}
.banner_box a{
	display: inline-block;
	width: 100%;
}
.banner_box a img{
	width: 100%;
	height: auto;
	object-fit: cover;
}

/*# sourceMappingURL=style.css.map */