/* パックごはんブランドページ */

/* common setting */

/* 画像リンク */
#contents a:hover img {
    opacity:0.7;
    filter:alpha(opacity=70);
    -ms-filter:"alpha( opacity=70 )";
    transition:all .3s ease;
}

body {
    position:relative;
    overflow-x: hidden;
}

#navHeader {
    margin-bottom:0 !important;
    z-index:100;
}


#contents {
    position: relative;
}
#contents * {
    box-sizing: border-box;
}

#contents img {
    max-width: 100%;
    height: auto;
}

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

section {
    background-color: #ffffff;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
section .inner {
    width: 94%;
    max-width: 850px;
    margin-left: auto;
    margin-right: auto;
}

section h2 {
    line-height: 1.4;
    font-size: 48px;
    font-weight: 700;
    letter-spacing: -0.075em;
}
section p {
    line-height: 1.6;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: -0.075em;
}

/* KV */
section#kv {
    position: relative;
    width: 100%;
    z-index: 1;
}
section#kv ul {
    line-height: 0;
    font-size: 0;
}
section#kv ul li > div {
    width: 100%;
    height: 650px;
    background-repeat: no-repeat;
    background-position: center top;
    background-size: auto 100%;
}
section#kv ul li.kv01 > div {background-image: url("../images/kv01_2000.jpg");}
section#kv ul li.kv02 > div {background-image: url("../images/kv02_2000.jpg");}
section#kv ul li.kv03 > div {background-image: url("../images/kv03_2000.jpg");}
section#kv ul li.kv04 > div {background-image: url("../images/kv04_2000.jpg");}


/* factory */
section#factory {
    position: sticky;
    top: 0;
    z-index: -1;
}
section#factory .bg {
    width: 100%;
    height: 380px;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url("../images/factory_bg_pc.jpg");
    z-index: -1;
}


/* lead */
section#lead {
    overflow: hidden;
    position: relative;
    background-color: #ffffff;
    padding: 40px 0 40px;
    z-index: 1;
}
section#lead:after {
    position: absolute;
    left: 50%;
    bottom: 0;
    width: 700px;
    height: 635px;
    background-repeat: no-repeat;
    background-position: center top;
    background-image: url("../images/lead_bg_pc.jpg");
    z-index: -1;
    content: "";
}
@media only screen and (max-width: 1200px) {
    section#lead:after {
        left: inherit;
        right: 0;
    }
}

section#lead .text {
    width: 660px;
    margin-bottom: 30px;
    text-align: left;

}
section#lead .text p {
    font-weight: 700;
    text-shadow: 1px 1px 6px rgba(255,255,255,1.0),
    -1px 1px 6px rgba(255,255,255,1.0),
    1px -1px 6px rgba(255,255,255,1.0),
    -1px -1px 6px rgba(255,255,255,1.0);
}
section#lead ul {
    display: flex;
}
section#lead ul li {
    width: 207px;
}
section#lead ul li:not(:last-child) {
    margin-right: 32px;
}


/* feature */
section#feature {
    position: relative;
    background-color: #050204;
}
section#feature .bg {
    position: sticky;
    top: 0;
    left: 50%;
    width: 640px;
    transform: translateX(210px);
}
@media only screen and (max-width: 1400px) {
    section#feature .bg {
        transform: none;
    }
}

section#feature .block {
    position: relative;
    text-align: left;
    color: #ffffff;
    z-index: 1;
}
section#feature .block h2 {
    margin-bottom: 0.25em;
    font-size: 36px;
    text-shadow: 1px 1px 6px rgba(0,0,0,1.0),
    -1px 1px 6px rgba(0,0,0,1.0),
    1px -1px 6px rgba(0,0,0,1.0),
    -1px -1px 6px rgba(0,0,0,1.0);
}
section#feature .block h2 strong {
    font-size: 48px;
    color: #ed7000;
}
section#feature .block p {
    margin-bottom: 1em;
    text-shadow: 1px 1px 6px rgba(0,0,0,1.0),
    -1px 1px 6px rgba(0,0,0,1.0),
    1px -1px 6px rgba(0,0,0,1.0),
    -1px -1px 6px rgba(0,0,0,1.0);
}

section#feature #feature01 {
    margin-top: -968px;
    margin-bottom: 200px;
    padding-top: 60px;
}
section#feature #feature02 {
    margin-bottom: 200px;
}
section#feature #feature03 {
    padding-bottom: 125px;
}

section#feature #feature02 ul {
    transform: translateX(-210px);
}
section#feature #feature02 ul li:not(:last-child) {
    margin-bottom: 15px;
}
section#feature #feature03 ul {
    transform: translateX(-210px);
}


/* movies */
section#movies {
    padding-bottom: 20px;
}
section#movies h3 {
    background-color: #793d3d;
    margin-bottom: 15px;
    padding: 0.25em 0;
    text-align: left;
    line-height: 1.4;
    font-size: 30px;
    color: #ffffff;
}
section#movies h3 span {
    display: block;
    width: 94%;
    max-width: 850px;
    margin-left: auto;
    margin-right: auto;
}
section#movies .movie {
    width: 94%;
    max-width: 850px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 50px;
}
section#movies .movie img {
    border-radius: 24px;
}


/* lineup */
section#lineup {
    padding-bottom: 120px;
}
section#lineup h2 {
    text-align: left;
    letter-spacing: -0.15em;
}
section#lineup p.lead {
    margin-bottom: 0.5em;
    text-align: left;
    font-size: 24px;
}
section#lineup h3 {
    position: relative;
    margin-bottom: 20px;
    text-align: left;
    line-height: 1.6;
    font-size: 30px;
    color: #ffffff;
}
section#lineup h3 span {
    position: relative;
    z-index: 1;
}
section#lineup h3:before {
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    content: "";
}
section#lineup h3.title01 {
    background-color: #ff6400;
}
section#lineup h3.title01:before {
    background-color: #ff6400;
}
section#lineup h3.title02 {
    background-color: #515723;
}
section#lineup h3.title02:before {
    background-color: #515723;
}
section#lineup h3.title03 {
    background-color: #4b7ebf;
}
section#lineup h3.title03:before {
    background-color: #4b7ebf;
}
section#lineup h3.title04 {
    color: #530000;
}
section#lineup h3.title04:before {
    left: inherit;
    right: 0;
    width: 200%;
    background-repeat: no-repeat;
    background-position: right center;
    background-image: url("../images/obi01_pc.jpg")
}

section#lineup ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 20px;
}
section#lineup ul.nomore {
    margin-bottom: 50px;
}
section#lineup ul li {
    width: 25%;
    text-align: center;
}
section#lineup ul li img {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
section#lineup ul li img.text {
    width: 100%;
    max-width: 200px;
}
section#lineup ul li figure {
    width: 90%;
    max-width: 130px;
    margin: 0 auto;
}
section#lineup ul li.big figure {
    width: 90%;
    max-width: 400px;
}
section#lineup ul li.big {
    width: 294px;
}
section#lineup input {
    display: none;
}
section#lineup p.more {
    margin-bottom: 35px;
    text-align: right;
}
section#lineup label {
    font-size: 20px;
    transition: all .5s ease;
    cursor: pointer;
}
section#lineup label span {
    position: relative;
    border-bottom: 1px solid #000000;
}
section#lineup label:hover span {
    border-bottom: none;
}
section#lineup label span:before {
    display: inline-block;
    margin-right: 0.25em;
    font-size: 24px;
    font-weight: 900;
    transform: rotate(90deg);
    content: ">"
}
section#lineup label span.close {
    display: none;
}
section#lineup input:checked ~ p.more label span.open {display: none;}
section#lineup input:checked ~ p.more label span.close {display: inline-block;}
section#lineup input:checked ~ p.more label span:before {
    rotate: -180deg;
}
section#lineup ul.acc {
    justify-content: center;
    visibility: hidden;
    height: 0;
    opacity: 0;
    margin-bottom: 0;
    transition: all .3s ease;
}
section#lineup input:checked ~ ul.acc {
    visibility: visible;
    height: auto;
    opacity: 1;
    margin-bottom: 20px;
    padding-top: 20px;
}

section#lineup .link01 {
    position: relative;
    height: 110px;
    margin-bottom: 55px;
    padding-top: 200px;
    padding-left: 80px;
    text-align: left;
}
section#lineup .link01:before {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 200%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: left bottom;
    background-image: url("../images/obi02_pc.jpg");
    content: "";
}
section#lineup .link01 a {
    display: inline-block;
    position: absolute;
    left: 2em;
    bottom: 0.5em;
    margin-top: 0.5em;
    padding-right: 1.5em;
    line-height: 1.4;
    font-size: 30px;
    font-weight: 900;
    color: #530000;
    z-index: 1;
}
section#lineup .link01 a:after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    height: 1em;
    line-height: 1;
    font-weight: 900;
    margin: auto;
    z-index: 1;
    content: ">"
}
@media only screen and (max-width: 850px) {
    section#lineup .link01 a:after {
        position: static;
    }
}
section#lineup .link01 a:hover {
    color: #9c0000;
    text-decoration: none;
}
section#lineup .link01 ul {
    display: flex;
    justify-content: space-between;
    position: absolute;
    left: 50%;
    bottom: -40px;
    width: 45%;
    max-width: 380px;
    transform: translateX(180px);
    z-index: 1;
}
section#lineup .link01 ul li {
    width: 29%;
}
section#lineup .link01 ul li img {
    filter: drop-shadow(0px 0px 8px rgba(0,0,0,0.6));
}
@media only screen and (max-width: 1120px) {
    section#lineup .link01 ul {
        left: inherit;
        right: 3%;
        width: 40%;
        transform: translateX(70px);
    }
}
@media only screen and (max-width: 950px) {
    section#lineup .link01 ul {
        right: -2%;
        bottom: 2%;
        width: 35%;
        transform: none;
    }
}

section#lineup .link02 {
    position: relative;
    text-align: left;
    font-size: 28px;
}
section#lineup .link02 a {
    display: block;
    position: relative;
    padding-right: 1em;
    line-height: 1.6;
    color: #ffffff;
    transition: all .3s ease;
    z-index: 1;
}
section#lineup .link02 a:hover {
    color: #c8c8c8;
    text-decoration: none;
}
section#lineup .link02:before {
    position: absolute;
    top: 0;
    right: 0;
    width: 200%;
    height: 100%;
    background-color: #e60012;
    font-size: 30px;
    content: "";
}
section#lineup .link02:after {
    position: absolute;
    top: 0;
    right: -1.2em;
    width: 2em;
    height: 3em;
    background-color: #ffffff;
    font-size: 30px;
    transform: rotate(30deg);
    content: "";
}


/* example */
section#example {
    background-color: #ffeed4;
    padding-top: 50px;
    padding-bottom: 20px;
}
section#example h2 {
    text-align: left;
    font-size: 36px;
}
section#example p {
    margin-bottom: 1.5em;
    text-align: left;
}
section#example ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
section#example ul li {
    width: 28%;
    margin-bottom: 35px;
    text-align: left;
    line-height: 1.4;
    font-size: 17px;
    font-weight: 900;
}
section#example ul li img {
    margin-bottom: 10px;
}

.space {
    background-color: #ffffff;
}
.space01 {
    height: 50px;
}
.space02 {
    height: 65px;
}

/* recipe */
section#recipe {
    overflow: hidden;
    background-color: #fffcdb;
    padding-top: 55px;
    padding-bottom: 55px;
}
section#recipe h2 {
    font-size: 60px;
}
section#recipe h2 span {
    display: block;
    font-size: 32px;
}
section#recipe p {
    margin-bottom: 2em;
}
section#recipe ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 50px;
}
section#recipe ul li {
    position: relative;
    width: 24%;
}
section#recipe ul li a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: all .3s ease;
}
section#recipe ul li a:hover {
    background-color: rgba(255,255,255,0.5);
}
section#recipe ul li p {
    background-color: #ed7000;
    margin-bottom: 0;
    padding: 0.25em 0.5em;
    text-align: left;
    font-size: 21px;
    color: #ffffff;
}

section#recipe .link {
    position: relative;
    text-align: left;
    font-size: 30px;
}
section#recipe .link a {
    display: block;
    position: relative;
    padding-left: 2em;
    line-height: 1.6;
    color: #ed7000;
    transition: all .3s ease;
    z-index: 1;
}
section#recipe .link a:hover {
    color: #a54e00;
    text-decoration: none;
}
section#recipe .link:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 200%;
    height: 100%;
    background-color: #ffe900;
    font-size: 30px;
    content: "";
}
section#recipe .link:after {
    position: absolute;
    top: 0;
    left: -0.35em;
    width: 1em;
    height: 2.5em;
    background-color: #fffcdb;
    font-size: 30px;
    transform: rotate(-30deg);
    content: "";
}


/* link */
section#link {
    background-color: #ffeed4;
    padding-top: 40px;
    padding-bottom: 60px;
}
section#link p {
    margin-bottom: 0.5em;
    font-size: 28px;
}
section#link ul {
    display: flex;
    justify-content: space-between;
}
section#link ul li {
    position: relative;
    width: 32.5%;
}
section#link ul li img.btn {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 5.4%;
    width: 87%;
    margin: auto;
}


/* bottom */
section#bottom {
    padding-top: 60px;
    padding-bottom: 90px;
}
section#bottom .inner {
    background-repeat: no-repeat;
    background-image: url("../images/bg-rice.png");
    background-size: cover;
    padding: 60px 10.5% 90px;
}
section#bottom h2 {
    margin-bottom: 0.5em;
    font-size: 32px;
    font-weight: 900;
}
section#bottom p {
    margin-bottom: 2em;
    font-size: 20px;
}
section#bottom p.image {
    margin-bottom: 20px;
}
section#bottom p.btn {
    margin-bottom: 0;
}




/* -949px */
/*-------------------------------------------*/
@media only screen and (max-width: 949px) {

/* common setting */

img, object, embed, video {
    max-width:100%;
    height:auto;
}

#navHeader {
    height:20px;
}


section#kv ul li > div {
    height: 0;
    padding-top: 68.42%;
}


section#factory .bg {
    height: 0;
    background-size: cover;
    padding-top: 40%;
}



}
/*-------------------------------------------*/
/* 949px END */



/* 750px */
/*-------------------------------------------*/
@media only screen and (max-width: 750px) {

html,
body {
    overflow: inherit !important;
    overflow-x: hidden !important;
    overflow-x: clip !important;
}
#contents {
}

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

section .inner {
    width: 90%;
    max-width: inherit;
}

section h2 {
    font-size: 6.4vw;
}
section p {
    font-size: 2.8vw;
    font-weight: 900;
}


section#kv ul li > div {
    height: 64vh;
    background-size: cover;
}


@media only screen and (max-width: 640px) {
    section#kv ul li > div {
        height: 0;
        background-size: contain;
        padding-top: 133.333%;
    }
    section#kv ul li.kv01 > div {background-image: url("../images/kv01_750.jpg");}
    section#kv ul li.kv02 > div {background-image: url("../images/kv02_750.jpg");}
    section#kv ul li.kv03 > div {background-image: url("../images/kv03_750.jpg");}
    section#kv ul li.kv04 > div {background-image: url("../images/kv04_750.jpg");}
}


/* factory */
section#factory .bg {
    height: 60.933vw;
    background-size: cover;
    background-image: url("../images/factory_bg_sp.jpg");
    padding-top: 0;
}


/* lead */
section#lead {
    padding: 5.4vw 0 2.7vw;
}
section#lead:after {
    width: 100%;
    height: 113.333vw;
    background-image: url("../images/lead_bg_sp.jpg");
    background-size: cover;
}

section#lead .text {
    width: 100%;
    margin-bottom: 44vw;
}
section#lead .text h2 {
    margin-bottom: 0.25em;
}
section#lead ul {
    justify-content: space-between;
}
section#lead ul li {
    width: 32%;
}
section#lead ul li:not(:last-child) {
    margin-right: inherit;
}


/* feature */
section#feature .bg {
    left: 0;
    width: 100%;
}

section#feature .block h2 {
    padding-left: 1.1em;
    text-indent: -1.1em;
    font-size: 4.8vw;
}
section#feature .block h2 strong {
    font-size: 6.4vw;
}

section#feature #feature01 {
    margin-top: -120vw;
    margin-bottom: 10vw;
    padding-top: 8vw;
}
section#feature #feature02 {
    margin-bottom: 10vw;
}
section#feature #feature03 {
    padding-bottom: 14vw;
}

section#feature #feature01 p {
    margin-bottom: 11vw;
}
section#feature #feature02 ul {
    width: 57.866vw;
    transform: translateX(-8.5%);
}
section#feature #feature02 ul li:not(:last-child) {
    margin-bottom: 2vw;
}
section#feature #feature03 p {
    margin-bottom: 8vw;
}
section#feature #feature03 ul {
    width: 59.333vw;
    transform: translateX(-8.2%);
}


/* movies */
section#movies {
    padding-bottom: 10vw;
}
section#movies h3 {
    margin-bottom: 4.5vw;
    font-size: 4.8vw;
}
section#movies h3 span {
    width: 90%;
}
section#movies .movie {
    width: 90%;
    margin-bottom: 6vw;
}


/* lineup */
section#lineup {
    padding-bottom: 16vw;
}
section#lineup p.lead {
    margin-bottom: 1em;
    font-size: 3.2vw;
}
section#lineup h3 {
    margin-bottom: 0.5em;
    padding-top: 0.15em;
    font-size: 3.9vw;
}
section#lineup h3.title04:before {
    background-image: url("../images/obi01_sp.jpg")
}
section#lineup ul {
    justify-content: center;
    margin-bottom: 0;
}
section#lineup ul.nomore {
    margin-bottom: 3.4vw;
}
section#lineup ul li {
    width: 42%;
    margin-bottom: 3.6vw;
}
section#lineup ul.standard {
    justify-content: center;
}
section#lineup ul.standard li {
    width: 42%;
}
section#lineup ul li img.text {
    max-width: 100%;
}
section#lineup ul li figure {
    width: 74%;
    max-width: inherit;
    margin: 0 auto;
}
section#lineup ul li.big figure {
    width: 90%;
    max-width: 400px;
}
section#lineup ul li.big img.text {
    width: 80%;
}
section#lineup ul li.big {
    width: 55%;
}
section#lineup p.more {
    margin-bottom: 7vw;
}
section#lineup label {
    font-size: 4.2vw;
}
section#lineup label span:before {
    font-size: 4.8vw;
}
section#lineup input:checked ~ ul.acc {
    margin-bottom: 3.6vw;
    padding-top: 0;
}

section#lineup .link01 {
    height: 40vw;
    margin-bottom: 12vw;
    padding-top: 1vw;
    padding-left: 17vw;
}
section#lineup .link01:before {
    left: 0;
    background-position: left bottom;
    background-image: url("../images/obi02_sp.jpg");
    background-size: contain;
}
section#lineup .link01 a {
    top: 0.25em;
    left: 4.5em;
    bottom: inherit;
    font-size: 4vw;
}
section#lineup .link01 a:after {
    position: absolute;
}
section#lineup .link01 ul {
    left: 23%;
    right: inherit;
    bottom: -10vw;
    width: 52%;
    max-width: inherit;
    transform: none;
}

section#lineup .link02 {
    font-size: 3.0vw;
}
section#lineup .link02:before {
    top: -0.15em;
    padding: 0.15em 0;
    font-size: 3.0vw;
}


/* example */
section#example {
    padding-top: 4vw;
    padding-bottom: 4vw;
}
section#example h2 {
    margin-bottom: 0.5em;
    font-size: 4.8vw;
}
section#example p {
    font-size: 2.8vw;
}
section#example ul li {
    width: 30%;
    margin-bottom: 3vw;
    font-size: 2.3vw;
}
section#example ul li img {
    margin-bottom: 1.2vw;
}

.space {
    background-color: #ffffff;
}
.space01 {
    height: 6.6vw;
}
.space02 {
    height: 6.6vw;
}

/* recipe */
section#recipe {
    padding-top: 6vw;
    padding-bottom: 8vw;
}
section#recipe h2 {
    font-size: 8vw;
}
section#recipe h2 span {
    font-size: 4.3vw;
}
section#recipe p {
    margin-bottom: 2em;
}
section#recipe ul {
    margin-bottom: 4%;
}
section#recipe ul li {
    width: 48%;
    margin-bottom: 3%;
}
section#recipe ul li p {
    font-size: 4vw;
}

section#recipe .link {
    font-size: 4vw;
}
section#recipe .link:before {
    font-size: 4vw;
}
section#recipe .link:after {
    font-size: 4vw;
}


/* link */
section#link {
    padding-top: 6.6vw;
    padding-bottom: 7.4vw;
}
section#link .inner {
    width: 100%;
}
section#link p {
    font-size: 3.2vw;
}


/* bottom */
section#bottom {
    padding-top: 7.4vw;
    padding-bottom: 12vw;
}
section#bottom .inner {
    width: 100%;
    padding: 60px 10.5% 90px;
}
section#bottom h2 {
    font-size: 4.3vw;
}
section#bottom p {
    font-size: 3vw;
}
section#bottom p.image {
    margin-bottom: 2.8vw;
}





}
/*-------------------------------------------*/
/* 750px END */



/* 640px以下 */
/*-------------------------------------------*/
@media only screen and (max-width: 640px) {

/* common setting */

#navHeader {
    height:auto;
}

.pagetop_sp {z-index:9999;}




}
/*-------------------------------------------*/
/* 640px以下 END */








