/*
 Theme Name: Astra Child
 Template: astra
*/
.mincho{
	font-family: 游明朝, YuMincho, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HG明朝E, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.fc-red{
	color: #c00;
}
.fc-blue{
	color: #2c7ac3;
}
.fc-green{
	color: #508a43;
}
.fb{
	font-weight: 700;
}
.max800{
	max-width: 800px;
}
/* =======================================
    header
======================================= */
.ast-primary-header-bar{
	background-color: rgba(255, 255, 255, .7);
}
.site-primary-header-wrap.ast-container{
	padding-right: 0;
}
.main-header-menu{
	font-family: 游明朝, YuMincho, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", HG明朝E, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.main-header-menu #menu-item-132 a,
.main-header-menu #menu-item-133 a{
	position: relative;
	flex-direction: column;
	justify-content: center;
	font-size: .625rem;
	line-height: 24px;
}
.main-header-menu #menu-item-132 a::before,
.main-header-menu #menu-item-133 a::before{
	content: "";
	display: block;
	width: 2rem;
	height: 2rem;
	background: url(img/icon-cart.svg) center center / contain no-repeat;
}
.main-header-menu #menu-item-133 a::before{
	background-image: url(img/icon-account.svg);
}
/*ドロワーメニュー*/
.ast-header-break-point #masthead .ast-mobile-header-wrap .ast-primary-header-bar{
	padding-left: 15px;
	padding-right: 10px;
}
#ast-hf-mobile-menu.main-header-menu{
	font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen-Sans, Ubuntu, Cantarell, Helvetica Neue, sans-serif;
	font-size: 1.125rem;
}
.sp-menu-extra-wrap{
	display: flex;
	align-items: flex-end;
	gap: 1rem;
}
.sp-menu-extra-link{
	display: flex;
	flex-direction: column;
	align-items: center;
	font-size: .75rem;
	line-height: 2;
	color: #000;
	padding-right: 1rem;
}
.sp-menu-extra-link img{
	width: 2rem;
}
.ast-mobile-header-wrap .ast-button-wrap .menu-toggle.main-header-menu-toggle{
	background-color: #5b4d42;
	border-radius: 50%;
}
[data-section="section-header-mobile-trigger"] .ast-button-wrap .mobile-menu-toggle-icon .ast-mobile-svg{
	fill: #fff;
}
@media screen and (max-width: 1024px) {
	.ast-logo-title-inline .site-logo-img{
		width: 150px;
	}
	.main-header-menu{
		font-size: .875rem;
	}
}
/* =======================================
    index
======================================= */
.index-note{
	max-width: 800px !important;
	background-color: #fafafa;
	margin: 2rem auto 2rem;
	padding: 2rem;
}
.index-note h4{
	text-align: center;
}
.index-note a{
	display: block;
	max-width: 20rem !important;
	text-align: center;
	text-decoration: none !important;
	color: #fff;
	background-color: #508a43;
	margin: 0 auto;
	padding: .5rem;
}
.index-note a:hover{
	color: #fff;
	background-color: #5ea050;
}
/* 記事カード全体を縦並びにする */
.wp-block-uagb-post-grid .uagb-post__inner-wrap {
	display: flex;
	flex-direction: column;
	height: 100%;
}

/* サムネ画像エリア */
.wp-block-uagb-post-grid .uagb-post__image {
	aspect-ratio: 580 / 772;
	background: #e5e5e5;
	overflow: hidden;
	margin-bottom: 1rem;
}

/* 画像そのもの */
.wp-block-uagb-post-grid .uagb-post__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* サムネなし記事にダミー画像枠を作る */
.wp-block-uagb-post-grid .uagb-post__inner-wrap:not(:has(.uagb-post__image))::before {
	content: "";
	display: block;
	width: calc(100% + 40px);
	aspect-ratio: 580 / 772;
	background: #e5e5e5;
	margin-left: -20px;
	margin-top: -20px;
	margin-right: -20px;
	margin-bottom: 1rem;
}
.index-youtube .wp-block-embed__wrapper{
	max-width: 640px !important;
}
.index-news{
	max-width: 750px !important;
	margin: 0 auto 2rem !important;
	padding: 0 !important;
}
.index-news a{
	color: #000;
}
.index-news .wp-block-latest-posts__post-title{
	font-size: 1.25rem;
	font-weight: 700;
}
@media screen and (max-width: 480px) {
	.index-news.wp-block-latest-posts > li > *{
		margin-top: 0;
	}
	.index-news .wp-block-latest-posts__featured-image{
		width: 33%;
	}
	.index-news .wp-block-latest-posts__featured-image img{
		width: 100%;
	}
	.index-news .wp-block-latest-posts__post-date{
		margin-bottom: 0 !important;
	}
}
/* =======================================
    footer
======================================= */
.site-footer{
	margin-top: 2rem;
}
.footer-soryo{
	background-color: #f7f3f0;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	margin-top: -21px;
	padding: 2rem;
}
.footer-soryo p{
	max-width: 960px;
	color: #000;
	text-align: left;
	margin: 0 auto 1rem;
}
.footer-soryo .pc{
	width: 100%;
	max-width: 960px;
}
.footer-soryo .sp{
	display: none;
}
.footer-satohuru{
	padding: 1rem;
}
#astra-footer-menu{
	max-width: 640px;
	margin: 0 auto;
}
@media screen and (max-width: 768px) {
	.footer-soryo .pc{
		display: none;
	}
	.footer-soryo .sp{
		display: block;
		width: 100%;
	}
}
/* =======================================
    ページ共通
======================================= */
#content{
	margin-top: -80px;
}
.product-template-default #content{
	margin-top: 0;
}
#primary{
	margin-top: 0 !important;
}
.entry-header{
	position: relative;
	background: url(img/bg-mainview.jpg) center center / cover no-repeat;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
	padding-top: 30vw;
}
.home .entry-header{
	margin: 0;
	padding-top: 0;
}
.page-id-43 .entry-header,
.page-id-61 .entry-header{
	background-image: url(img/bg-mainview-vegetable.jpg);
}
.page-id-48 .entry-header{
	background-image: url(img/bg-mainview-rice.jpg);
}
.blog .archive-title.entry-header,
.single .entry-header{
	background-image: url(img/bg-mainview-blog.jpg);
}
.blog .archive-title.entry-header{
	margin-bottom: 2rem;
}
.entry-header::before,
.blog .archive-title.entry-header h1{
	content: "SHINCHAN FARM";
	position: absolute;
	bottom: 1rem;
	right: 2rem;
	font-size: 5rem;
	color: #fff;
	text-shadow: 0 0 5px #000;
}
.single .entry-header::before{
	content: "BLOG";
}
.blog .archive-title.entry-header::before{
	content: none;
}
.entry-content{
	padding-top: 3rem;
}
.home .entry-content{
	padding-top: 0;
}
.title-img{
	text-align: center;
	margin-bottom: 2rem;
}
/*Order Notes (オプション)*/
#order_comments_field{
	display: none;
}
@media screen and (max-width: 1024px) {
	.blog .archive-title.entry-header h1,
	.entry-header::before{
		font-size: 3rem;
	}
}
@media screen and (max-width: 768px) {
	.entry-header{
		padding-top: 220px;
	}
}
@media screen and (max-width: 640px) {
	.entry-header{
		padding-top: 200px;
	}
	.blog .archive-title.entry-header h1,
	.entry-header::before{
		right: 1rem;
		bottom: .5rem;
		font-size: 2rem;
	}
}
.post-section__title{
	text-align: center;
	margin-top: 2rem;
}

.veg01 {
    position: relative;
    min-height: 477px;
    overflow: hidden;
    margin-bottom: 60px;
    margin-top: 30px;
}
.veg01-left {
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -490px;
}
.veg01 .sp {
    display: none;
}
.veg01-top {
	position: relative;
    top: 0;
    left: 50%;
    width: 100%;
    height: 240px;
    background-image: url(https://shinchan-nouen.com/cmsAdmin/wp-content/uploads/2026/03/veg05.png);
    background-position: left top;
    background-repeat: no-repeat;
    margin-left: -425px;
    padding-top: 90px;
    padding-left: 270px;
}
.veg01-bottom {
    top: 233px;
    right: 50%;
    width: 100%;
    height: 240px;
    text-align: right;
    background-image: url(https://shinchan-nouen.com/cmsAdmin/wp-content/uploads/2026/03/veg06.png);
    background-position: right top;
    background-repeat: no-repeat;
    margin-right: -475px;
    padding-top: 75px;
    padding-right: 270px;
}
@media screen and (max-width: 960px) {
	.veg01 .sp {
        display: block;
    }
    .veg01-top, .veg01-bottom {
        position: static;
        height: auto;
        font-size: 14px;
        background-image: none;
        background-color: #eee;
        padding: 10px;
    }
	.veg01-top {
        margin: 0 0 15px 0;
    }
	.veg01-bottom
 	{
        text-align: left;
        margin-right: 0;
    }
}
/* =======================================
    アクセス
======================================= */
.tyokubai{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 3.5rem;
	margin: 2rem 0;
    background: url(img/bg-access.jpg) center center / contain no-repeat;
	padding: 2rem 0;
}
.tyokubai dd{
    color: #a17e4b;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 2;
	margin: 0;
}
.access02{
	display: flex;
	align-items: flex-start;
	justify-content: center;
	gap: 1rem;
}
.access02 dl{
	display: flex;
	border: solid 1px #ccc;
}
.access02 dl:first-child{
	border-bottom: none;
}
.access02 dt{
	width: 8rem;
	font-weight: normal;
	text-align: center;
	color: #fff;
	background-color: #717171;
	padding: 1rem .5rem;
}
.access02 dd{
	flex: 1;
	margin: 0;
	padding: 1rem;
}
.btn-phone{
	display: flex;
	align-items: center;
	gap: .5rem;
	font-size: 1.25rem;
	font-weight: 700;
	text-decoration: none !important;
	color: #000;
	pointer-events: none;
}
.btn-phone img{
	width: 1.5rem;
	padding-top: 2px;
}
@media screen and (max-width: 768px) {
	.tyokubai{
		gap: 2rem;
	}
	.tyokubai dd{
		font-size: 1.25rem;
	}
	.access02{
		flex-direction: column;
		align-items: center;
		gap: .5rem;
	}
	.access02 dl{
		flex-direction: column;
	}
	.access02 dt{
		width: 100%;
	}
	.btn-phone{
		justify-content: center;
		pointer-events: auto;
		border: solid 1px #000;
		border-radius: 5px;
		padding: .5rem;
	}
}
/* =======================================
    ショップ　ご注文
======================================= */
.ast-woocommerce-container{
	padding-top: 2rem;
}
.woocommerce-js ul.products li.product .price{
	font-size: 1rem;
}
/*注文ページのお買い物カゴに追加ボタン*/
.astra-shop-summary-wrap .add_to_cart_button{
	display: none !important;
}
.wp-block-woocommerce-cart{
	margin: 0 auto !important;
}
.shop-archive-note{
}
.note-otya{
	font-size: 1.25rem;
	font-weight: 700;
}
.btn-green{
    display: block;
    text-align: center;
    background-color: #508a43;
	width: 100%;
    max-width: 360px;
    margin: 0 0 1.5rem;
    padding: 10px;
    color: #fff;
}
.btn-green:hover{
	color: #fff;
	background-color: #5ea050;
}
.woocommerce-js div.product .product_title{
	position: inherit;
	top: inherit;
	left: inherit;
	right: inherit;
}
/*お届け先*/
#wce-lc-multi-ship-root h3::before{
	content: "※注文者情報とお届け先が同じ場合は『注文者情報を反映』ボタンをクリック";
	display: block;
	font-size: 1.125rem;
	font-weight: 700;
	color: #c00;
}
/* =======================================
    マイアカウント
======================================= */
.woocommerce-MyAccount-navigation-link--downloads{
	display: none;
}
/* =======================================
    記事一覧
======================================= */
.ast-article-post .entry-header{
	background: none;
	margin: 0;
	padding: 0;
}
.ast-article-post .entry-header::before{
	content: none;
}
/* =======================================
    記事詳細
======================================= */
.ast-separate-container{
	background: transparent;
}
.ast-separate-container #primary,
.ast-separate-container .ast-article-single{
	padding-top: 0;
}
h1.entry-title{
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	max-width: 710px;
	background-color: #fff;
	margin: 0 auto;
	padding: 1rem 8rem 1rem 2rem;
}
.single-layout-1 .entry-meta{
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	text-align: right;
	color: #fff;
	margin: 0 auto;
	padding: 1.5rem 2rem .5rem;
}
.entry-meta .author{
	display: none;
}
.entry-meta .published{
	color: #000;
}
@media screen and (max-width: 920px) {
	.entry-title,
	.entry-meta{
		left: 20px;
		right: 20px;
		max-width: 850px;
	}
	.entry-title{
		padding: .5rem 8rem 1rem 3rem;
	}
	.entry-meta{
		padding-top: 1rem;
	}
}
@media screen and (max-width: 544px) {
	.entry-title,
	.entry-meta{
		left: 15px;
		right: 15px;
	}
	.entry-title{
		padding-left: 1rem;
		padding-right: 7rem;
	}
	.entry-meta{
		padding-right: 1rem;
	}
}
/* =======================================
    当サイトについて
======================================= */
.about01{
	display: flex;
	gap: 2rem;
	border-top: 1px dotted #ccc;
	margin: 0 auto;
	padding: 1rem 0;
}
.about01:last-child{
	border-bottom: 1px dotted #ccc;
}
.about01 dt{
	width: 10rem;
}
.about01 dd{
	flex: 1;
	margin: 0;
}
@media screen and (max-width: 768px) {
	.about01{
		flex-direction: column;
		gap: 0;
		padding: .5rem 0;
	}
}
/* =======================================
    お問合せ
======================================= */
.title01{
	border-bottom: solid 1px #5b4d42;
	padding-bottom: .5rem;
	margin-bottom: 2rem;
}
.title01.max800{
	max-width: 800px !important;
}
.wrap-contact{
	display: flex;
	gap: 1rem;
	max-width: 640px;
	margin: 0 auto;
}
.wrap-contact label{
	width: 10rem;
}
.hissu{
	display: inline-block;
	vertical-align: middle;
	font-size: .75rem;
	color: #fff;
	background-color: #c00;
	border-radius: 4px;
	margin-left: .5rem;
	padding: 1px 4px;
}
.contact-input{
	flex: 1;
}
.contact-input select{
	margin-bottom: 1rem;
}
.wpcf7-submit{
	display: block;
	margin: 0 auto;
}
@media screen and (max-width: 640px) {
	.wrap-contact{
		flex-direction: column;
		gap: .5rem;
	}
	.wrap-contact label{
		width: 100%;
	}
}

/* マイアカウント・チェックアウト：パスワード再設定の案内 */
.shinchan-password-reset-notice__text {
	margin: 0 0 0.75em;
}
.shinchan-password-reset-notice__action {
	margin: 0;
}
.shinchan-password-reset-notice__button {
	display: inline-block;
	margin-top: 0.25em;
}