/*
Theme Name: CUBIC
Description: CUBIC Template
Author: 管理人
*/



body{
    font-size: 30px;
    font-size: 3.35vw;
}
.in{
    width: 95%;
}
.pc{
    display: none;
}
/*見出し*/
.clip_taitl .clip_taitltext{
    font-size: 34px;
    font-size: 4.3vw;
    max-width: 16em;
}
/*リンクボタン*/
.link_botm .link_text{
    font-size: 32px;
    font-size: 3.55vw;
    min-width: 12em;
}
/*リンクボタンリスト*/
.link_botm ul{
    -webkit-flex-direction: column;
    flex-direction: column;
}
/*見出し------*/
h2{
    
}
h3{
    font-size: 35px;
    font-size: 4vw;
}
h4{
    font-size: 35px;
    font-size: 4vw;
    margin-bottom: 0.5em;
}
h5{
    font-size: 35px;
    font-size: 3.9vw;
}
h6{

}


hr{
    margin:3em 0;
}
/*********************************************
ヘッダー*******/

.hedimg_box h1{
    width: 38.4vw;
    position: absolute;
    margin: auto;
    right: 0;
    left: 0;
    top: 15vw;
}
.hedimg_box.home_hed .hed_textbox{
    writing-mode: vertical-rl;
    text-orientation: upright;
    font-feature-settings: normal;
    font-size: 3.5vw;
}

/*ナビボタン*/
.navbotn {
    position: fixed;
    width: 60px;
    height: 60px;
    background-color: #e62413;
    z-index: 1;
    padding: 15px;
    cursor: pointer;
    top: 0;
    right: 0;
    z-index: 11;
}
.navbotn .hamburger {
    position: relative;
    width: 100%;
    height: 100%;
    display: block;
    z-index: 2;
    pointer-events: none;
    cursor: pointer;
}
.navbotn .hamburger span {
    display: inline-block;
    position: absolute;
    width: 100%;
    height: 2px;
    background-color: #fff;
    margin: auto;
    transition: 0.5s;
    left: 0;
}
.navbotn .hamburger span:nth-child(1) {
    top: 0;
}
.navbotn .hamburger span:nth-child(2) {
    top: 0;
    bottom: 0;
}
.navbotn .hamburger span:nth-child(3) {
    bottom: 0;
}
.navbotn.active .hamburger span:nth-child(1) {
    transform: rotate(45deg);
    top: 13px;
}
.navbotn.active .hamburger span:nth-child(2) {
    opacity: 0;
    left: 50%;
}
.navbotn.active .hamburger span:nth-child(3) {
    transform: rotate(-45deg);
    bottom: 16px;
}
/*ナビ*/

nav {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #ffffff;
    padding: 100px 0 60px;
    overflow: auto;
    transition: 0.5s;
    opacity: 0;
    visibility: hidden;
    z-index: 10;
}
nav.active {
    opacity: 1;
    visibility: visible;
}
nav .gnavi,
.hed_contact{
    width: 90%;
    margin: auto;
    
}
nav .gnavi{
    padding: 20px;
    background-color: rgba(240, 238, 236, 1);
    border-radius: 6px;
}
nav .gnavi a {
    padding: 1em;
    display: block;
    text-align: center;
}
nav .gnavi li:has(.sub-menu) {
    cursor: pointer;
}
nav .gnavi .sub-menu {
    background-color: #e62413;
    border-radius: 6px;
    color: #fff;
}
nav .gnavi .sub-menu,
nav .gnavi .sub-menu :is(li, a) {
    height: 0;
    transition: 0.5s;
    opacity: 0;
    visibility: hidden;
}
nav .gnavi li.active .sub-menu,
nav .gnavi li.active .sub-menu :is(li, a) {
    height: auto;
    opacity: 1;
    visibility: visible;
}
.hed_contact{
    margin-top: 0.5em;
}
.hed_contact a{
    display: block;
    padding: 20px;
    border-radius: 6px;
    text-align: center;
}

/*ヘッダー画像*/

.hedimgs li > div{
    height: 57vw;
}


/*********************************************
フッター*******/
footer {
    
    margin-top: 125px;
    margin-top: 12.5vw;
    padding: 0 0 6vw;
    background-color: #e62413;
}
/*********************************************
ホーム*******/
.yasai_img{
    width: 14vw;
}
.home_content{
    padding-bottom: 16vw;
}
.home_title{
    font-size: 34px;
    font-size: 4.3vw;
}
.clip_taitl .clip_taitltext span {
    font-size: 25px;
    font-size: 2.8vw;
}
/*メインビジュアル*/
.home_hed {
    padding-bottom: 40px;
}
.hedimgs_buttons{
    margin-top: 12px;
}
.hedimgs_buttons .swiper-pagination,
.swiper_plays{
    height: 4em;
    max-height: 60px;
}
.swiper_plays{
    width: 4em;
    max-width: 60px;
}
/*ホームお知らせ*/
.home01_img01{
    top: -3vw;
    left: 0;
}
.home01_img02{
    right: 0;
    bottom: -8vw;
}
/*ホーム佐々木農場について*/
.home03_img02{
    bottom: auto;
    top: -2vw;
    left: 11vw;
}
/*ホームやさいブログ*/
.home_04{
    
}
.home04_img {
    right: -6vw;
    top: -20.3vw;
}
.home_blog a{
    padding: 1em;
    gap: 0.5em;
}
.blog_listtitle {
    font-size: 1em;
}
/*ホームお問い合わせ*/
.home_06{
    padding-bottom: 0;
}
.home06_img01{
    top: 20vw;
}
.home06_img02{
    bottom: 7vw;
    right: 0;
}
.foot_contact_box li + li{
    border-top: 1px solid #000;
}
.foot_contact_box li p:has(b){
    font-size: 34px;
    font-size: 4.3vw;
}

/*********************************************
下層ページ*******/



/*下層ページヘッダー-------*/
.content_hed .hed_title{
   /* width: 60vw;
    height: 16.27vw;*/
}
.hed_title h2{
    font-size: 2.5vw;
}
.hed_title h2:has(strong){
    font-size: 4.5vw;
}
.content_hed {
    margin-bottom: 8vw;
}
.content_hed .mvimg > div {
    height: 19vw;
	min-height: 125px;
}
.content_hed h1{
    top: 7vw;
}
.content_hed:has(:not(.hed_mvimg)) h1{
    width: 16%;
	min-width: 105px;
    top: 21px;
    margin-left: 0;
}
.mvimg:has(.mob) .hed_mvimg{
    display: none;
}
/*一覧ページ共通-------*/
/*サイドメニュー*/
.sidebar{
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.sidebar_list{
    width: 48%;
    position: relative;
}
.sidebar_catlist{
    position: absolute;
    background-color: #fff;
    width: 100%;
    border-radius: 1.5em;
    transition: 0.5s;
    top: 1.5em;
}
.sidebar_catlist a{
    padding: 0.5em 1em;
    display: block;
}
.sidebar_catlist,
.sidebar_catlist a{
    height: 0;
    opacity: 0;
    visibility: hidden;
}
.sidebar_catlist li + li{
    border-top: 1px solid #f0f0f1;
}
.sidebar_catlist.active{
    top: 2.2em;  
}
.sidebar_catlist.active,
.sidebar_catlist.active a{
    height: auto;
    min-height: 1em;
    opacity: 1;
    visibility: visible;
}


/*一覧ページ-------*/

/*お知らせ*/

.news_list ul li a{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    /*grid-template-rows: repeat(2, 1fr);*/
    gap: 0 1em;
}
.news_list .news_data{
    grid-column: span 3 / span 3;
    grid-column-start: 2;
    grid-row-start: 1;
}
.news_list .news_listimg{
    grid-row: span 2 / span 2;
    grid-column-start: 1;
    grid-row-start: 1;
}
.news_list .news_listtitle{
    grid-column: span 3 / span 3;
    grid-column-start: 2;
    grid-row-start: 2;
}
/*ブログ*/
.blog_list ul{
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 380px), 1fr));
}
/*固定ページ-------*/
.p_box + .p_box{
    margin-top: 12vw;
}
/*こだわり*/
.content_hed .hed_textbox{
    display: none;
}
.kodawari01_img{
    border-radius: 3vw;
    margin-bottom: 1em;
}
.kodawari01_img > div{
    padding-top: 32%;
}
.kodawari01_01{
    background-image: url(../images/kodawari01_01mob.jpg);
}
.kodawari01_02{
    background-image: url(../images/kodawari01_02mob.jpg);
}
.kodawari_02 .yasai_04::before,
.kodawari_02 .yasai_04::after{
    right: 0;
}
.kodawari_02 .yasai_03::before,
.kodawari_02 .yasai_03::after{
    right: auto;
}
#shop_map {
    height: 70vw;
}
.tab_base {
    border-radius: 2em;
    padding: 2em 2em;
}
.nenkan_text dl{
    gap: 2em;
}
.shopping .tab a {
    width: 5.9em;
    height: 5.9em;
}
.shopping_list dl + dl{
    margin-top: 1em
}
.shopping_list li:has(dl) + li{
    margin-top: 1.5em;
}

/*佐々木農場について*/

.about_01_img01{
    top: -8vw;
}
.about_01_img02{
    display: none;
}
.about_box{
    padding-bottom: 16vw;
}
.staff_list li{
    padding: 5%;
    gap: 2vw;
}
.staff_yasaiimg{
    grid-column: span 3 / span 3;
}
.staff_img{
    grid-column: span 2 / span 2;
    grid-row: span 2 / span 2;
    grid-column-start: 4;
    text-align: right;
}
.staff_data{
    grid-column: span 3 / span 3;
    grid-row-start: 2;
}
.staff_listtext{
    padding-top: 5vw;
    grid-column: span 5 / span 5;
    grid-row-start: 3;
}
.staff_yasaiimg img{
    width: 22%;
}
.staff_data h5{
    font-size: 30px;
    font-size: 3.3vw;
}
.about02_imgs {
    padding: 7vw 0;
}
.about02_imgs img{
    width: 100%;
}
.about03_text{
    font-size: 30px;
    font-size: 3.4vw;
}
.about03_list dl{
    padding: 1em;
}
.about03_list dt{
    width: 5em;
}
.about03_list dd{
    width: calc(100% -5em);
}
#access{
    height: 80vw;
}
.about04_box,
.about04_box .address + .address{
    margin-top: 6vw;
}
.about04_box .address{
    position: relative;
}
.address h4{
    font-size: 30px;
    font-size: 3.6vw;
}
.about_04_img02,
.about_04_img01{
    right: 3%;
    top: 0;
    transform: translate(0, 50%);
}

/*インタビュー*/
.recruit_boximg img{
    width: 19%;
}
.interview_list{
    margin-top: 8vw;
}
.interview_names{
    -webkit-justify-content: center;
    justify-content: center;
    border-radius: 1.8em;
    padding: 0.2em;
}
.interview_names p{
    font-size: 40px;
    font-size: 4.5vw;
}
.interview_name{
    margin-bottom: 6vw;
}
.snterview_img{
    text-align: center;
    margin-bottom: 1.5em;
}
.interview_list li:not(:nth-child(1)) {
    padding-top: 1em;
}
.interview_list li:not(:nth-last-child(1)) .interview_text{
    padding-bottom: 0.5em;
}

/*お問い合わせ*/
.contectfomw :is(table,tbody,tr,th,td){
    display: block;
}
.contectfomw th{
    text-align: left;
}
.contectfomw td {
    margin-bottom: 20px
}




