@charset "utf-8";

/*--------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
汎用
----------------------------------------------------------------------------
----------------------------------------------------------------------------
--------------------------------------------------------------------------*/
body {min-width: 1200px; padding-top: 198px;}

#content.site-content {margin-bottom: 7.88vw;}

.site-content-contain {min-height: calc(100vh - 198px);}

.pc {display: block;}
.sp {display: none;}

.container {width: 1100px;}

@media screen and (max-width: 1680px) {
	body {padding-top: 158px;}
	.site-content-contain {min-height: calc(100vh - 158px);}
}
@media screen and (max-width: 1480px) {
	body {padding-top: 130px;}
	.site-content-contain {min-height: calc(100vh - 130px);}
}

/*--------------------------------------------------------------------------
部品
--------------------------------------------------------------------------*/
/*------------------------------------
汎用見出し
------------------------------------*/
.g-h img {left: 16px; margin: 0 auto 18px;}
.g-h span {font-size: 30px;}

@media screen and (max-width: 1560px) {
	.g-h img {width: 58px; height: auto; left: 13px; margin: 0 auto 14px;}
	.g-h span {font-size: 24px;}
}

/*------------------------------------
汎用ヘッダー
------------------------------------*/
.page-heading {margin: 52px 0 60px;}
.page-heading h1 {margin-bottom: 42px;}
.page-heading h1 .icon {left: 12px; margin: 0 auto 10px;}
.page-heading h1 .txt {font-size: 30px;}

.page-heading h1 .icon.recipe {left: 0;}

@media screen and (max-width: 1560px) {
	.page-heading {margin: 42px 0 48px;}
	.page-heading h1 {margin-bottom: 34px;}
	.page-heading h1 .icon {width: 58px; height: auto; left: 10px; margin: 0 auto 8px;}
	.page-heading h1 .txt {font-size: 24px;}
}

/*------------------------------------
MORE
------------------------------------*/
.more {width: 200px; height: 50px; font-size: 20px;}

@media screen and (max-width: 1560px) {
	.more {width: 160px; height: 40px; font-size: 16px;}
}

/*------------------------------------
ページネーション
------------------------------------*/
.pagination .page-numbers,
.pagination .page-numbers.current {font-size: 1em!important;}

/*--------------------------------------------------------------------------
ヘッダー
--------------------------------------------------------------------------*/
header.site-header {padding: 20px 0;}
header.site-header * {font-size: 20px;}

header.site-header .sp-header {display: none;}
header.site-header .pc-header {padding: 0 20px;}
header.site-header .pc-header .inner {display: grid; grid-template-columns: calc(100% - 1106px) 800px 306px; grid-template-rows: 1fr 1fr; gap: 0px 0px; grid-template-areas: "site-branding contact-info ec-links" "site-branding h-navi ec-links"; width: 100%; min-width: 1160px; max-width: 1600px; margin: 0 auto;}

header.site-header .pc-header .site-branding {grid-area: site-branding; margin: 0 auto 0 0!important;}
header.site-header .pc-header .site-branding .site-title {display: flex; align-items: center; height: 100%;}

header.site-header .pc-header .contact-info {grid-area: contact-info; justify-content: flex-end;}
header.site-header .pc-header .contact-info .tel-big .notice {font-size: 15px; margin-bottom: 6px;}
header.site-header .pc-header .contact-info .tel-big .free-dial img {width: 24px; height: auto; margin-right: 6px;}
header.site-header .pc-header .contact-info .tel-big .free-dial span .title {font-size: 12px;}
header.site-header .pc-header .contact-info .tel-big .free-dial span .num {font-size: 36px;}
header.site-header .pc-header .contact-info .tel-small {margin: 0 24px 0; padding: 0 20px; border-left: 1px; border-right: 1px; border-style: solid; border-color: #969696;}
header.site-header .pc-header .contact-info .tel-small p {margin-bottom: 0;}
header.site-header .pc-header .contact-info .hours {text-align: right; margin-bottom: 0;}

header.site-header .pc-header .h-navi {grid-area: h-navi;}
header.site-header .pc-header .h-navi #top-menu {display: flex; margin: 20px 0 -20px;}
header.site-header .pc-header .h-navi #top-menu > li {margin: 0 43px 0 0; padding-bottom: 32px;}
header.site-header .pc-header .h-navi #top-menu > li:last-child {margin: 0;}
header.site-header .pc-header .h-navi #top-menu > li.current-menu-item > a {font-weight: 700;}
header.site-header .pc-header .h-navi #top-menu > li.menu-item-has-children:after {display: block; content: ""; position: absolute; left: calc(50% - 7.5px); bottom: 14px; width: 0; height: 0; border-style: solid; border-width: 12px 7.5px 0 7.5px; border-color: #969696 transparent transparent transparent; transition: .3s ease;}
header.site-header .pc-header .h-navi #top-menu > li.menu-item-has-children:hover:after {border-color: #a40202 transparent transparent transparent;}
header.site-header .pc-header .h-navi #top-menu > li .sub-menu {display: block!important; position: absolute; top: 100%; left: 0; z-index: -1; background: rgba(255,255,255, .8); padding: 24px 0; opacity: 0; visibility: hidden; box-sizing: border-box; transition: .3s ease;}
header.site-header .pc-header .h-navi #top-menu > li:hover .sub-menu {opacity: 1; visibility: visible;}
header.site-header .pc-header .h-navi #top-menu > li .sub-menu li a {display: block; padding: 13px 32px; box-sizing: border-box; white-space: nowrap;}
header.site-header .pc-header .h-navi #top-menu > li .sub-menu li a:hover {color: #fff; background: #a40202;}

header.site-header .pc-header .ec-links {grid-area: ec-links; align-items: center; margin-left: 56px;}
header.site-header .pc-header .ec-links .shop-btn.more {width: 110px; height: 110px;}
header.site-header .pc-header .ec-links .shop-btn.more span {letter-spacing: -3px!important;}
header.site-header .pc-header .ec-links .shop-btn.more .img {width: 38px; height: 40px; margin-bottom: 8px;}
header.site-header .pc-header .ec-links .sub-btn {margin-left: 25px;}
header.site-header .pc-header .ec-links .sub-btn a.more:not(:last-child) {margin-bottom: 10px;}
header.site-header .pc-header .ec-links .sub-btn a.more span {padding: 10px 16px;}

@media screen and (max-width: 1680px) {
	header.site-header {padding: 16px 0;}
	header.site-header * {font-size: 18px;}
	header.site-header .pc-header .inner {grid-template-columns: calc(100% - 958px) 698px 260px;}

	header.site-header .pc-header .site-branding .site-title a img {width: 240px;}

	header.site-header .pc-header .contact-info .tel-big .notice {font-size: 12px; margin-bottom: 5px;}
	header.site-header .pc-header .contact-info .tel-big .free-dial img {width: 19px; margin-right: 5px;}
	header.site-header .pc-header .contact-info .tel-big .free-dial span .title {font-size: 10px;}
	header.site-header .pc-header .contact-info .tel-big .free-dial span .num {font-size: 28px;}
	header.site-header .pc-header .contact-info .tel-small {margin: 0 18px 0; padding: 0 16px;}

	header.site-header .pc-header .h-navi #top-menu {margin: 16px 0 -16px;}
	header.site-header .pc-header .h-navi #top-menu > li {margin: 0 34px 0 0; padding-bottom: 26px;}
	header.site-header .pc-header .h-navi #top-menu > li.menu-item-has-children:after {left: calc(50% - 6px); bottom: 10px; border-width: 10px 6px 0 6px;}
	header.site-header .pc-header .h-navi #top-menu > li .sub-menu {padding: 19px 0;}
	header.site-header .pc-header .h-navi #top-menu > li .sub-menu li a {padding: 10px 25px;}

	header.site-header .pc-header .ec-links {margin-left: 44px;}
	header.site-header .pc-header .ec-links .shop-btn.more {width: 96px; height: 96px;}
	header.site-header .pc-header .ec-links .shop-btn.more .img {width: 30px; height: 32px; margin-bottom: 6px;}
	header.site-header .pc-header .ec-links .sub-btn {margin-left: 20px;}
	header.site-header .pc-header .ec-links .sub-btn a.more:not(:last-child) {margin-bottom: 8px;}
	header.site-header .pc-header .ec-links .sub-btn a.more span {padding: 8px 13px;}
}
@media screen and (max-width: 1480px) {
	header.site-header {padding: 15px 0;}
	header.site-header * {font-size: 16px;}
	header.site-header .pc-header .inner {grid-template-columns: calc(100% - 862px) 632px 230px;}

	header.site-header .pc-header .site-branding .site-title a img {width: 212px;}

	header.site-header .pc-header .contact-info .tel-big .notice {font-size: 10px; margin-bottom: 4px;}
	header.site-header .pc-header .contact-info .tel-big .free-dial img {width: 17px; margin-right: 4px;}
	header.site-header .pc-header .contact-info .tel-big .free-dial span .title {font-size: 8px;}
	header.site-header .pc-header .contact-info .tel-big .free-dial span .num {font-size: 22px;}
	header.site-header .pc-header .contact-info .tel-small {margin: 0 18px 0; padding: 0 15px;}

	header.site-header .pc-header .h-navi #top-menu {margin: 15px 0 -15px;}
	header.site-header .pc-header .h-navi #top-menu > li {margin: 0 33px 0 0; padding-bottom: 25px;}
	header.site-header .pc-header .h-navi #top-menu > li.menu-item-has-children:after {left: calc(50% - 5px); bottom: 10px; border-width: 8px 5px 0 5px;}
	header.site-header .pc-header .h-navi #top-menu > li .sub-menu {padding: 18px 0;}
	header.site-header .pc-header .h-navi #top-menu > li .sub-menu li a {padding: 8px 24px;}

	header.site-header .pc-header .ec-links {margin-left: 38px;}
	header.site-header .pc-header .ec-links .shop-btn.more {width: 84px; height: 84px;}
	header.site-header .pc-header .ec-links .shop-btn.more .img {width: 28px; height: 30px; margin-bottom: 5px;}
	header.site-header .pc-header .ec-links .sub-btn {margin-left: 18px;}
	header.site-header .pc-header .ec-links .sub-btn a.more:not(:last-child) {margin-bottom: 6px;}
	header.site-header .pc-header .ec-links .sub-btn a.more span {padding: 6px 12px;}
}

@media all and (-ms-high-contrast:none) {
	header.site-header .pc-header .inner {display: -ms-grid; -ms-grid-columns: calc(100% - 1128px) 842px 286px; -ms-grid-rows: 1fr 1fr;}
	header.site-header .pc-header .site-branding {-ms-grid-row: 1; -ms-grid-row-span: 2; -ms-grid-column: 1; -ms-grid-column-span: 1;}
	header.site-header .pc-header .ec-links {-ms-grid-row: 1; -ms-grid-row-span: 2; -ms-grid-column: 3; -ms-grid-column-span: 1;}
	header.site-header .pc-header .contact-info {-ms-grid-row: 1; -ms-grid-row-span: 1; -ms-grid-column: 2; -ms-grid-column-span: 1;}
	header.site-header .pc-header .h-navi {-ms-grid-row: 2; -ms-grid-row-span: 1; -ms-grid-column: 2; -ms-grid-column-span: 1;}
}
@media all and (-ms-high-contrast:none) and (max-width: 1680px) {
	header.site-header .pc-header .inner {-ms-grid-columns: calc(100% - 975px) 731px 244px;}
}
@media all and (-ms-high-contrast:none) and (max-width: 1480px) {
	header.site-header .pc-header .inner {-ms-grid-columns: calc(100% - 883px) 665px 218px;}
}

/*--------------------------------------------------------------------------
フッター
--------------------------------------------------------------------------*/
footer.site-footer {padding-top: 65px;}
footer.site-footer:before {top: calc(-5.417vw + 2px); height: 5.417vw; background-image: url(../img/common/footer-bg.png);}
footer.site-footer * {font-size: 20px;}

footer.site-footer .f-navi {margin: 0 0 56px;}
footer.site-footer .f-navi ul {display: flex; justify-content: center; align-items: center;}
footer.site-footer .f-navi ul li {margin: 0 45px;}

footer.site-footer .footer-content {flex-wrap: wrap; align-items: flex-start;}

footer.site-footer .site-logo {width: 550px; margin-top: 10px;}
footer.site-footer .site-logo a img {width: 200px; height: auto;}

footer.site-footer .office-info {width: 550px; box-sizing: border-box; margin-bottom: 42px; padding: 0 0 0 67px;}
footer.site-footer .office-info.branch {border-left: 1px solid #fff;}
footer.site-footer .office-info.branch:nth-of-type(odd) {border-right: 1px solid #fff;}
footer.site-footer .office-info > dt {font-weight: 700; margin-bottom: 8px;}
footer.site-footer .office-info > dd p {line-height: 2;}
footer.site-footer .office-info > dd .tel {margin: 8px 0 18px;}
footer.site-footer .office-info > dd .tel img {width: 32px; height: auto; margin-right: 8px;}
footer.site-footer .office-info > dd .tel span {font-size: 48px;}

footer.site-footer .copyright {font-size: 15px; margin: 22px 0 80px;}

footer.site-footer .scroll {top: 6px; right: -90px;}
footer.site-footer .scroll .arrow {width: 90px; height: 90px;}
footer.site-footer .scroll .arrow:before {top: calc(50% - 22px); left: calc(50% - 25px); border-width: 0 25px 44px 25px;}
footer.site-footer .scroll span {margin-top: 16px;}

@media screen and (max-width: 1680px) {
	footer.site-footer * {font-size: 18px;}
}

@media screen and (max-width: 1560px) {
	footer.site-footer {padding-top: 52px;}
	footer.site-footer * {font-size: 16px;}
	footer.site-footer .container {width: 880px;}

	footer.site-footer .f-navi {margin:0 0 45px;}
	footer.site-footer .f-navi ul li {margin: 0 36px;}

	footer.site-footer .site-logo {width: 440px;}
	footer.site-footer .site-logo a img {width: 160px;}

	footer.site-footer .office-info {width: 440px; margin-bottom: 34px; padding: 0 0 0 54px;}
	footer.site-footer .office-info dt {margin-bottom: 6px;}
	footer.site-footer .office-info dd .tel {margin: 6px 0 14px;}
	footer.site-footer .office-info dd .tel img {width: 26px; margin-right: 6px;}
	footer.site-footer .office-info dd .tel span {font-size: 38px;}

	footer.site-footer .copyright {font-size: 12px; margin: 18px 0 64px;}

	footer.site-footer .scroll {top: 4px; right: -72px;}
	footer.site-footer .scroll .arrow {width: 72px; height: 72px;}
	footer.site-footer .scroll .arrow:before {top: calc(50% - 18px); left: calc(50% - 20px); border-width: 0 20px 36px 20px;}
	footer.site-footer .scroll span {margin-top: 13px;}
}

/*--------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
フロントページ
----------------------------------------------------------------------------
----------------------------------------------------------------------------
--------------------------------------------------------------------------*/
/*------------------------------------
ヒーローヘッダー
------------------------------------*/
#main .hero-header {margin-bottom: 82px;}
#main .hero-header #top-slider .slick-list li {height: 850px;}
#main .hero-header #top-slider .slick-list li .logo {width: 109px; height: 223px; bottom: 50px; right: 60px;}
#main .hero-header #top-slider .slick-list li .advertise {font-size: 60px; letter-spacing: -1.8px!important;}
#main .hero-header #top-slider .slick-list li .advertise span.small {font-size: 40px; letter-spacing: -1.2px!important; margin: 47px 0 -107px;}
#main .hero-header #top-slider .slick-list li .advertise.shadow {text-shadow: 0 0 20px #fff;}
#main .hero-header #top-slider .slick-list li .center-box .logo.color-white {width: 220px; height: 450px; margin-bottom: 64px;}
#main .hero-header #top-slider .slick-list li .center-box .logo.color-black {width: 184px; height: 379px; margin-bottom: 38px;}
#main .hero-header #top-slider .slick-list li .center-box .advertise {font-size: 50px; letter-spacing: -1.5px!important;}

#main .hero-header #top-slider .slick-dots {display: flex; justify-content: center; margin: 28px 0 0;}
#main .hero-header #top-slider .slick-dots li {width: 20px; height: 20px; margin: 0 12.5px;}
#main .hero-header #top-slider .slick-dots li button {display: block; width: 100%; height: 100%; text-indent: 100%; white-space: nowrap; overflow: hidden; background: #000; padding: 0; border-radius: 50%;}
#main .hero-header #top-slider .slick-dots li.slick-active button {background: #b2b2b2;}

@media screen and (max-width: 1560px) {
	#main .hero-header #top-slider .slick-list li {height: 680px;}
	#main .hero-header #top-slider .slick-list li .logo {width: 87px; height: 178px; bottom: 40px; right: 48px;}
	#main .hero-header #top-slider .slick-list li .advertise {font-size: 48px; letter-spacing: -1.4px!important;}
	#main .hero-header #top-slider .slick-list li .advertise span.small {font-size: 32px; letter-spacing: -1px!important; margin: 38px 0 -86px;}
	#main .hero-header #top-slider .slick-list li .advertise.shadow {text-shadow: 0 0 16px #fff;}
	#main .hero-header #top-slider .slick-list li .center-box .logo.color-white {width: 176px; height: 360px; margin-bottom: 51px;}
	#main .hero-header #top-slider .slick-list li .center-box .logo.color-black {width: 147px; height: 303px; margin-bottom: 30px;}
	#main .hero-header #top-slider .slick-list li .center-box .advertise {font-size: 40px; letter-spacing: -1.2px!important;}

	#main .hero-header #top-slider .slick-dots {margin: 22px 0 0;}
	#main .hero-header #top-slider .slick-dots li {width: 16px; height: 16px; margin: 0 10px;}
}

/*------------------------------------
新着情報 & 新規会員
------------------------------------*/
#main .news-recruit {width: 930px; justify-content: space-between; margin-bottom: 120px;}

#main .news-recruit .news {width: 484px;}
#main .news-recruit .news h2 {margin-bottom: 24px;}
#main .news-recruit .news h2 span {font-size: 30px; margin-left: 14px;}
#main .news-recruit .news .news-list {margin-bottom: 32px;}
#main .news-recruit .news .news-list li .entry {padding: 1em 0;}
#main .news-recruit .news .news-list li .entry time,
#main .news-recruit .news .news-list li .entry h3 {font-size: 18px; letter-spacing: -1.5px!important;}
#main .news-recruit .news .news-list li .entry time {padding: 0 1em;}

#main .news-recruit .recruiting {width: 398px; margin-top: 114px;}
#main .news-recruit .recruiting p {font-size: 20px; margin-bottom: 1em;}

@media screen and (max-width: 1560px) {
	#main .news-recruit {width: 744px; margin-bottom: 96px;}

	#main .news-recruit .news {width: 387px;}
	#main .news-recruit .news h2 {margin-bottom: 19px;}
	#main .news-recruit .news h2 img {width: 58px; height: auto;}
	#main .news-recruit .news h2 span {font-size: 24px; margin-left: 11px;}
	#main .news-recruit .news .news-list {margin-bottom: 26px;}
	#main .news-recruit .news .news-list li .entry time,
	#main .news-recruit .news .news-list li .entry h3 {font-size: 14px; letter-spacing: -1.2px!important;}

	#main .news-recruit .recruiting {width: 318px; margin-top: 91px;}
	#main .news-recruit .recruiting p {font-size: 16px;}
}

/*------------------------------------
特徴
------------------------------------*/
#main .feature section {height: 1080px;}
#main .feature section h2,
#main .feature section h3 {font-size: 40px;}
#main .feature section p {font-size: 24px;}

#main .feature .ambition {height: 800px;}
#main .feature .ambition .inner {top: 203px; left: 45.75%;}
#main .feature .ambition .inner img {margin: 45px 64px 0 0;}
#main .feature .ambition .inner h2 span {margin-left: .375em;}
#main .feature .ambition .inner h2 span:last-child {margin-left: 0;}

#main .feature .agri .inner {top: 82px; left: calc(47.125% - 179px); width: 358px; height: 460px;}
#main .feature .agri p {margin: 24px 0 -24px;}
#main .feature .agri .more.v-write {width: 59px; height: 282px; font-size: 24px;}

#main .feature .mission .inner {top: 104px; left: 17.2%; height: 723px;}

#main .feature .contribute .inner {top: 107px; right: 21.4%; height: 573px;}

@media screen and (max-width: 1560px) {
	#main .feature section {height: 864px;}
	#main .feature section h2,
	#main .feature section h3 {font-size: 32px;}
	#main .feature section p {font-size: 19px;}

	#main .feature .ambition {height: 640px;}
	#main .feature .ambition .inner {top: 162px;}
	#main .feature .ambition .inner img {width: 170px; height: auto; margin: 36px 51px 0 0;}

	#main .feature .agri .inner {top: 66px; left: calc(47.125% - 143px); width: 286px; height: 368px;}
	#main .feature .agri p {margin: 19px 0 -19px;}
	#main .feature .agri .more.v-write {width: 48px; height: 226px; font-size: 19px; margin: 0 38px auto 0;}

	#main .feature .mission .inner {top: 83px; height: 586px;}

	#main .feature .contribute .inner {top: 86px; height: 458px;}
}

/*------------------------------------
製品
------------------------------------*/
#main .product {background-size: 100% auto; padding: 95px 0 142px;}

#main .product .bnr-list {width: 1500px; margin: 0 auto 134px;}
#main .product .bnr-list li {width: 700px; margin-right: 100px;}
#main .product .bnr-list li:nth-child(even) {margin-right: 0;}

#main .product .item .g-h {margin-bottom: 65px;}
#main .product .item .product-list {width: 936px; margin: 0 auto 41px;}
#main .product .item .product-list li {width: 204px; height: 204px; margin: 0 40px 29px 0; border-radius: 41px;}
#main .product .item .product-list li:nth-child(4n) {margin-right: 0;}
#main .product .item .product-list li .entry {padding: 16px;}
#main .product .item .product-list li .entry .img {width: 159px; height: 135px; margin-bottom: 16px;}
#main .product .item .product-list li .entry .img img {max-width: 159px; max-height: 135px;}
#main .product .item .product-list li .entry span {font-size: 25px;}

@media screen and (max-width: 1560px) {
	#main .product {padding: 76px 0 114px;}

	#main .product .bnr-list {width: 1200px; margin: 0 auto 107px;}
	#main .product .bnr-list li {width: 560px; margin-right: 80px;}

	#main .product .item .g-h {margin-bottom: 52px;}
	#main .product .item .product-list {width: 754px; margin: 0 auto 33px;}
	#main .product .item .product-list li {width: 164px; height: 164px; margin: 0 32px 23px 0; border-radius: 33px;}
	#main .product .item .product-list li .entry {padding: 13px;}
	#main .product .item .product-list li .entry .img {width: 111px; height: 95px; margin-bottom: 13px;}
	#main .product .item .product-list li .entry .img img {max-width: 111px; max-height: 95px;}
	#main .product .item .product-list li .entry span {font-size: 20px;}
}

/*------------------------------------
レシピ
------------------------------------*/
#main .recipe {padding: 62px 0 74px;}
#main .recipe .g-h {margin-bottom: 54px;}
#main .recipe .recipe-list {margin-bottom: 60px;}
#main .recipe .recipe-list #recipe-list {width: 600px;}
#main .recipe .recipe-list #recipe-list .slick-slide {margin: 0 15px;}
#main .recipe .recipe-list #recipe-list .entry .img {height: 400px;}
#main .recipe .recipe-list #recipe-list .entry h3 {font-size: 20px; margin: 20px 0;}
#main .recipe .recipe-list #recipe-list .slick-arrow {top: calc(50% - 35px); width: 70px; height: 70px;}
#main .recipe .recipe-list #recipe-list .slick-arrow.slick-prev {left: -35px;}
#main .recipe .recipe-list #recipe-list .slick-arrow.slick-next {right: -35px;}
#main .recipe .recipe-list #recipe-list .slick-arrow:before {top: 16px;}
#main .recipe .recipe-list #recipe-list .slick-arrow.slick-prev:before {left: 16px; border-width: 18px 30px 18px 0;}
#main .recipe .recipe-list #recipe-list .slick-arrow.slick-next:before {right: 16px; border-width: 18px 0 18px 30px;}

@media screen and (max-width: 1560px) {
	#main .recipe {padding: 50px 0 60px;}
	#main .recipe .g-h {margin-bottom: 43px;}
	#main .recipe .recipe-list {margin-bottom: 48px;}
	#main .recipe .recipe-list #recipe-list {width: 480px;}
	#main .recipe .recipe-list #recipe-list .slick-slide {margin: 0 12px;}
	#main .recipe .recipe-list #recipe-list .entry .img {height: 320px;}
	#main .recipe .recipe-list #recipe-list .entry h3 {font-size: 16px; margin: 16px 0;}
	#main .recipe .recipe-list #recipe-list .slick-arrow {top: calc(50% - 28px); width: 56px; height: 56px;}
	#main .recipe .recipe-list #recipe-list .slick-arrow.slick-prev {left: -28px;}
	#main .recipe .recipe-list #recipe-list .slick-arrow.slick-next {right: -28px;}
	#main .recipe .recipe-list #recipe-list .slick-arrow:before {top: 14px;}
	#main .recipe .recipe-list #recipe-list .slick-arrow.slick-prev:before {left: 13px; border-width: 14px 24px 14px 0;}
	#main .recipe .recipe-list #recipe-list .slick-arrow.slick-next:before {right: 13px; border-width: 14px 0 14px 24px;}
}

/*------------------------------------
直営店舗
------------------------------------*/
#main .directly-stores {width: 1040px; height: 400px; margin: 80px auto 105px;}
#main .directly-stores .inner {left: 234px; top: 85px;}

@media screen and (max-width: 1560px) {
	#main .directly-stores {width: 832px; height: 320px; margin: 64px auto 84px;}
	#main .directly-stores .inner {left: 187px; top: 68px;}
}

/*--------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
個別ページ
----------------------------------------------------------------------------
----------------------------------------------------------------------------
--------------------------------------------------------------------------*/

/*--------------------------------------------------------------------------
ご挨拶 (greeting.php)
--------------------------------------------------------------------------*/
#greeting .page-heading .img .inner p {font-size: 1.25em;}
#greeting .page-heading .img .inner p em {font-size: 2em; margin-left: 12px;}

#greeting .heading {margin: 132px auto 61px;}
#greeting .heading .inner {font-size: 40px;}
#greeting .heading .inner span {margin: 0 10px;}
#greeting .heading .inner img {bottom: 32px; right: 16px; width: 149px;}

#greeting .message {font-size: 1em; margin-bottom: 91px;}
#greeting .message p {line-height: 3;}

#greeting .img-list {width: 100%; justify-content: center; margin: 0 auto;}
#greeting .img-list li {margin: 0 18px;}
#greeting .img-list li figure img {margin-bottom: 20px;}

@media screen and (max-width: 1560px) {
	#greeting .page-heading .img .inner p em {margin-left: 10px;}

	#greeting .heading {margin: 106px auto 49px;}
	#greeting .heading .inner {font-size: 32px;}
	#greeting .heading .inner span {margin: 0 8px;}
	#greeting .heading .inner img {bottom: 26px; right: 13px; width: 120px;}

	#greeting .message {margin-bottom: 73px;}

	#greeting .img-list li {margin: 0 14px;}
	#greeting .img-list li figure img {margin-bottom: 16px;}
}

/*--------------------------------------------------------------------------
農之蔵の農業 (agriculture.php)
--------------------------------------------------------------------------*/
#agriculture {margin-bottom: -7.88vw;}

#agriculture .message h2 {width: 900px; margin: 116px auto 60px; font-size: 40px;}

#agriculture .flow {padding: 112px 0 24.896vw;}
#agriculture .flow section {justify-content: space-between; align-items: flex-start; margin-bottom: 60px;}
#agriculture .flow section .img {width: 500px;}
#agriculture .flow section .img img,
#agriculture .flow section .img video {height: 400px;}
#agriculture .flow section .img.video #play {width: 78px; height: 78px;}
#agriculture .flow section .img.video #play:before {top: 18px; right: 18px; border-width: 20px 0 20px 32px;}
#agriculture .flow section .txt {width: 550px;}
#agriculture .flow section .txt h3 {font-size: 27px;}

@media screen and (max-width: 1560px) {
	#agriculture .message h2 {width: 720px; margin: 93px auto 48px; font-size: 32px;}

	#agriculture .flow {padding: 90px 0 24.896vw;}
	#agriculture .flow section {margin-bottom: 48px;}
	#agriculture .flow section .img.video #play {width: 62px; height: 62px;}
	#agriculture .flow section .img.video #play:before {top: 14px; right: 14px; border-width: 16px 0 16px 26px;}
	#agriculture .flow section .txt h3 {font-size: 22px;}
}

/*--------------------------------------------------------------------------
農之蔵物語 (story.php)
--------------------------------------------------------------------------*/
#story {margin-bottom: -7.88vw;}

#story section .container {width: 900px;}

#story section.message .container {margin: 105px auto 115px;}
#story section.message h2 {font-size: 40px; margin-bottom: 40px;}
#story section.message .logo {margin: 52px auto 82px;}

#story section.item .item-name span.title {margin-bottom: 20px;}
#story section.item .item-name.koun span.title {font-size: 40px;}
#story section.item .item-name.tenkou span.title {font-size: 35px;}
#story section.item .item-name span.name {font-size: 60px; margin-bottom: 10px;}
#story section.item .item-name span.en {font-size: 30px; margin-bottom: 15px;}
#story section.item .item-name span.look {font-size: 40px;}

#story section.item .heading .img {min-height: 400px;}
#story section.item.koun .heading .txt {left: 61.8852%;}
#story section.item.tenkou .heading .txt {left: 63.375%;}
#story section.item .heading .salesoon {font-size: 30px; padding: 15px 25px;}

#story section.item.koun .flow,
#story section.item.tenkou .flow {background: 50% 0 / 100% auto repeat;}
#story section.item.koun .flow {background-image: url(../img/story/koun_bg.jpg); padding: 148px 0 200px;}
#story section.item.tenkou .flow {background-image: url(../img/story/tenkou_bg.jpg); padding: 156px 0 12.1vw;}

#story section.item .flow .flow-list li:before {width: 72px; height: 72px;}
#story section.item .flow .flow-list li:after {border-width: 30px 18px 0 18px;}
#story section.item .flow .flow-list.small li {width: 400px; margin-bottom: 112px;}
#story section.item .flow .flow-list.small li:before {bottom: -72px;}
#story section.item .flow .flow-list.small li:after {bottom: -56px;}
#story section.item .flow .flow-list.small li:nth-child(odd) {margin-right: 100px;}
#story section.item .flow .flow-list.big li {width: 600px; margin: 0 auto 146px;}
#story section.item .flow .flow-list.big li:before {top: -108px;}
#story section.item .flow .flow-list.big li:after {top: -84px;}
#story section.item .flow .flow-list.big li:last-child {margin-bottom: 0;}
#story section.item .flow .flow-list li .img {margin-bottom: 20px;}
#story section.item .flow .flow-list li .img .num {width: 128px; height: 128px; top: -32px; left: -32px; font-size: 30px;}

#story section.item .flow .comingsoon {justify-content: center; align-items: center;}
#story section.item.koun .flow .comingsoon {margin-top: 125px;}
#story section.item.koun .flow .comingsoon .img {margin-right: 20px;}
#story section.item.tenkou .flow .comingsoon {margin-top: 78px;}
#story section.item.tenkou .flow .comingsoon .img {margin-right: -50px;}

@media screen and (max-width: 1560px) {
	#story section.message .container {margin: 84px auto 92px;}
	#story section.message h2 {font-size: 32px; margin-bottom: 32px;}
	#story section.message .logo {margin: 42px auto 66px;}

	#story section.item .item-name span.title {margin-bottom: 16px;}
	#story section.item .item-name.koun span.title {font-size: 32px;}
	#story section.item .item-name.tenkou span.title {font-size: 28px;}
	#story section.item .item-name span.name {font-size: 48px; margin-bottom: 8px;}
	#story section.item .item-name span.en {font-size: 24px; margin-bottom: 12px;}
	#story section.item .item-name span.look {font-size: 32px;}

	#story section.item .heading .salesoon {font-size: 24px; padding: 12px 20px;}

	#story section.item.koun .flow {padding: 118px 0 160px;}
	#story section.item.tenkou .flow {padding: 125px 0 12.1vw;}

	#story section.item .flow .flow-list li:before {width: 58px; height: 58px;}
	#story section.item .flow .flow-list li:after {border-width: 24px 14px 0 14px;}
	#story section.item .flow .flow-list.small li {margin-bottom: 90px;}
	#story section.item .flow .flow-list.small li:before {bottom: -58px;}
	#story section.item .flow .flow-list.small li:after {bottom: -45px;}
	#story section.item .flow .flow-list.big li {margin: 0 auto 116px;}
	#story section.item .flow .flow-list.big li:before {top: -86px;}
	#story section.item .flow .flow-list.big li:after {top: -67px;}
	#story section.item .flow .flow-list li .img {margin-bottom: 16px;}
	#story section.item .flow .flow-list li .img .num {width: 102px; height: 102px; top: -26px; left: -26px; font-size: 24px;}

	#story section.item.koun .flow .comingsoon {margin-top: 100px;}
	#story section.item.koun .flow .comingsoon .img {width: 257px; height: auto; margin-right: 16px;}
	#story section.item.tenkou .flow .comingsoon {margin-top: 62px;}
	#story section.item.tenkou .flow .comingsoon .img {width: 240px; height: auto; margin-right: -40px;}
}

/*--------------------------------------------------------------------------
会社概要・店舗情報 (about.php)
--------------------------------------------------------------------------*/
#about .page-heading {margin-bottom: 144px;}

#about h2 {padding: 76px 0;}

#about .g-map {height: 600px; margin-top: 82px;}

#about section.company .img,
#about section.store .img {width: 550px;}
#about section.company .txt,
#about section.store .txt {width: 480px; margin-left: 70px;}

#about section.company .txt h2 {margin-bottom: 26px;}

#about section.depart {padding-bottom: 140px;}
#about section.depart section {align-items: center; margin-bottom: 78px;}
#about section.depart .img {width: 500px;}
#about section.depart .txt {width: 550px; margin-left: 50px;}
#about section.depart .txt h3 {font-weight: 500;}

#about section.store article {margin-bottom: 82px;}

@media screen and (max-width: 1560px) {
	#about .page-heading {margin-bottom: 115px;}

	#about h2 {padding: 60px 0;}

	#about .g-map {height: 480px; margin-top: 66px;}

	#about section.company .txt,
	#about section.store .txt {margin-left: 56px;}

	#about section.company .txt h2 {margin-bottom: 21px;}

	#about section.depart {padding-bottom: 112px;}
	#about section.depart section {margin-bottom: 62px;}
	#about section.depart .txt {margin-left: 40px;}

	#about section.store article {margin-bottom: 66px;}	
}

/*--------------------------------------------------------------------------
お問い合わせ、業務用商品のご案内、メールフォーム (contact.php,commercial.php,mail-form.php)
--------------------------------------------------------------------------*/
#contact .desc {margin-bottom: 60px;}

#contact .contact-list {margin: 0 50px 42px;}
#contact .contact-list section {width: 50%;}
#contact .contact-list h2 {font-size: 24px;}
#contact .contact-list .icons .icon {width: 128px; height: 128px; margin: 0 17px;}
#contact .contact-list .more {width: 310px; height: 70px;}

#contact .form input[type="text"],
#contact .form input[type="tel"],
#contact .form input[type="email"],
#contact .form textarea,
#contact .form label.file {border-width: 4px;}
#contact .form input[type="submit"] {width: 310px; margin: 52px auto 62px; border-width: 4px;}

#contact .cta {margin-bottom: 64px; padding: 42px 64px;}
#contact .cta .name {font-size: 24px;}

@media screen and (max-width: 1560px) {
	#contact .desc {margin-bottom: 48px;}

	#contact .contact-list {justify-content: space-between; margin: 0 50px 34px;}
	#contact .contact-list h2 {font-size: 19px;}
	#contact .contact-list .icons .icon {width: 102px; height: 102px; margin: 0 14px;}
	#contact .contact-list .more {width: 248px; height: 56px;}

	#contact .form input[type="text"],
	#contact .form input[type="tel"],
	#contact .form input[type="email"],
	#contact .form textarea,
	#contact .form label.file,
	#contact .form input[type="submit"] {border-width: 3px;}

	#contact .cta {padding: 34px 52px;}
	#contact .cta .name {font-size: 19px;}
}

/*--------------------------------------------------------------------------
プライバシーポリシー (privacy-policy.php)
--------------------------------------------------------------------------*/
#privacy h2 {font-size: 26px;}

@media screen and (max-width: 1560px) {
	#privacy h2 {font-size: 21px;}
}

/*--------------------------------------------------------------------------
レシピ一覧ページ (archive-recipe.php)
--------------------------------------------------------------------------*/
#archive-recipe .container {width: 87.5%;}

#archive-recipe .desc {margin-bottom: 3em;}

#archive-recipe .recipe-list > li {width: calc((100% - 4.5vw) / 4); margin: 0 1.5vw 2.8vw 0;}
#archive-recipe .recipe-list > li:nth-child(4n) {margin-right: 0;}
#archive-recipe .recipe-list > li .img {height: 15.4vw;}
#archive-recipe .recipe-list > li .state h3 {min-height: 4.7em; font-size: 1em; padding: .8em 0; border-bottom-width: 5px;}
#archive-recipe .recipe-list > li .state .in-house li {font-size: .8em;}

/*--------------------------------------------------------------------------
レシピ個別ページ (single-recipe.php)
--------------------------------------------------------------------------*/
#single-recipe .page-heading h1 {margin-bottom: 1.25em;}

#single-recipe .container {max-width: 1400px; width: 87.5%;}
#single-recipe .container > section {padding: 1.75em 2.5em 1.25em; border-top-width: 10px;}

#single-recipe .catch {font-size: 1.6em; margin: 0 auto 1.5em;}

#single-recipe article.main-img {width: 57.5%; margin-bottom: 2em;}

#single-recipe section.ingre {width: 40%; margin-left: 2.5%; padding: 1.75em 1.75em 1.25em;}

#single-recipe section.make {width: 100%;}

#single-recipe section.products {width: 100%;}
#single-recipe section.products .products-list {margin-right: -1em;}
#single-recipe section.products .products-list li {width: 200px;}
#single-recipe section.products .products-list li .img {width: 200px; height: 200px;}
#single-recipe section.products .products-list li h3 {font-size: 16px;}

@media screen and (max-width: 1560px) {
	#single-recipe .container > section {border-top-width: 8px;}
}

/*--------------------------------------------------------------------------
採用情報ページ (archive-recruit.php)
--------------------------------------------------------------------------*/
#archive-recruit .container {width: 1000px; margin-bottom: 128px;}

#archive-recruit .desc {margin-bottom: 52px; padding: 0 105px;}

#archive-recruit .entrance {margin-bottom: 100px;}
#archive-recruit .entrance h3 {padding: .5em 105px;}
#archive-recruit .entrance .entrance-list th,
#archive-recruit .entrance .entrance-list td {padding: .75em;}
#archive-recruit .entrance .entrance-list th {padding-left: 105px;}
#archive-recruit .entrance .entrance-list td {padding-right: 105px;}

@media screen and (max-width: 1560px) {
	#archive-recruit .container {width: 800px; margin-bottom: 102px;}

	#archive-recruit .desc {margin-bottom: 42px; padding: 0 84px;}

	#archive-recruit .entrance {margin-bottom: 80px;}
	#archive-recruit .entrance h3,
	#archive-recruit .entrance .entrance-list th {padding-left: 84px;}
	#archive-recruit .entrance .entrance-list td {padding-right: 84px;}
}

/*--------------------------------------------------------------------------
よくある質問一覧ページ (archive-faq.php)
--------------------------------------------------------------------------*/
#archive-faq .container {width: 1100px;}
#archive-faq .faq-list .entry {margin-bottom: 30px; padding: 48px 100px 40px;}
#archive-faq .faq-list .entry dl dt:before,
#archive-faq .faq-list .entry dl dd:before {min-width: 50px; height: 50px; font-size: 1.75em; margin-right: 50px; border-radius: 5px;}
#archive-faq .faq-list .entry dl dt {margin-bottom: 20px; padding-bottom: 20px;}
#archive-faq .faq-list .entry dl dd {font-size: .9em;}

@media screen and (max-width: 1840px) {
	#archive-faq {font-size: 18px;}
}
@media screen and (max-width: 1366px) {
	#archive-faq {font-size: 16px;}
}

/*--------------------------------------------------------------------------
お客様の声一覧ページ (archive-voice.php)
--------------------------------------------------------------------------*/
#archive-voice .container {width: 1100px;}
#archive-voice .voice-list .entry {margin-bottom: 30px; padding: 48px 100px 58px;}
#archive-voice .voice-list .entry h3 {margin-bottom: 10px;}
#archive-voice .voice-list .entry h3:after {margin-top: 16px; height: 47px;}
#archive-voice .voice-list .entry .customer-info {width: 145px; margin-right: 45px;}
#archive-voice .voice-list .entry .customer-info img {max-width: 115px; margin: .5em auto 16px;}
#archive-voice .voice-list .entry .customer-info .name,
#archive-voice .voice-list .entry .comment {font-size: .9em;}
#archive-voice .voice-list .entry .comment {width: 710px;}

@media screen and (max-width: 1840px) {
	#archive-voice {font-size: 18px;}
}
@media screen and (max-width: 1366px) {
	#archive-voice {font-size: 16px;}
}

/*--------------------------------------------------------------------------
投稿関連
--------------------------------------------------------------------------*/
#post .container {width: 1320px; justify-content: space-between;}

/*記事セクション*/
#post #primary.content-area {max-width: 888px; min-width: 888px;}
#post #primary.content-area .entry-heading {font-size: 1.3em; padding: 0 30px 10px; border-bottom-width: 5px;}
#post #primary.content-area .news-list {margin-bottom: 64px;}
#post #primary.content-area .news-list li {padding: 1em 36px;}
#post #primary.content-area .news-list li a time {margin-right: 1em;}

/*個別ページ*/
#post #primary.content-area.single {width: 100%;}
#post #primary.content-area.single header.entry-header {display: flex; flex-wrap: wrap; align-items: flex-end; margin-bottom: 1em; padding: 0 24px 10px; border-bottom-width: 5px;}
#post #primary.content-area.single header.entry-header .entry-title {font-size: 1.3em;}
#post #primary.content-area.single header.entry-header .entry-meta {margin-left: auto;}
#post #primary.content-area.single header.entry-header .entry-meta span {font-size: .75em;}
#post #primary.content-area.single .entry-content {padding: 0 24px;}

/*--サイドバー--*/
#post aside.sidebar {max-width: 312px; min-width: 312px; margin-top: 42px;}
#post aside.sidebar section h2.widget-title {font-size: 26px; margin-bottom: .25em; padding-left: 32px;}
#post aside.sidebar section.widget_recent_entries ul {padding: 0 16px; border-width: 5px; border-radius: 10px;}
#post aside.sidebar section.widget_recent_entries li .post-date,
#post aside.sidebar section.widget_recent_entries li a {font-size: 20px; padding: 6px 12px;}
#post aside.sidebar section.widget_archive select {font-size: 20px; padding: 10px 28px; border-width: 5px; border-radius: 10px; background-position: right 22px center; background-size: 14px auto;}

@media screen and (max-width: 1560px) {
	#post .container {width: 1056px;}

	#post #primary.content-area {max-width: 710px; min-width: 710px;}
	#post #primary.content-area h2 {font-size: 21px; padding: 0 24px 8px; border-bottom-width: 4px;}
	#post #primary.content-area .news-list {margin-bottom: 52px;}
	#post #primary.content-area .news-list li {font-size: 16px; padding: 1em 28px;}

	#post #primary.content-area.single header.entry-header {padding: 0 24px 8px; border-bottom-width: 4px;}

	#post aside.sidebar {max-width: 250px; min-width: 250px; margin-top: 34px;}
	#post aside.sidebar section h2.widget-title {font-size: 21px; padding-left: 26px;}
	#post aside.sidebar section.widget_recent_entries ul {padding: 0 13px; border-width: 4px; border-radius: 8px;}
	#post aside.sidebar section.widget_recent_entries li .post-date,
	#post aside.sidebar section.widget_recent_entries li a {font-size: 16px; padding: 5px 10px;}
	#post aside.sidebar section.widget_archive select {font-size: 16px; padding: 8px 22px; border-width: 4px; border-radius: 8px; background-position: right 18px center; background-size: 11px auto;}
}

/*--------------------------------------------------------------------------
404 (404.php)
--------------------------------------------------------------------------*/
#notfound {margin-bottom: -7.88vw;}