@charset "UTF-8";

html, body, figure, h1, h2, h3, h4, h5, h6, p, ul, ol, li, dl, dt, dd, form, fieldset, legend, input, button, select, textarea { margin: 0; padding: 0; }

header, footer, main, article, section, nav, aside { display: block; }

html { height: 100%; background-color: transparent; background-image: none; font-size: 100%; }

ul, ol { list-style: none; }

hr { color: inherit; height: auto; }

pre { font-family: monospace, sans-serif; }

h1, h2, h3, h4, h5, h6, strong, b { font-weight: bold; }

em, i { font-style: italic; }

img { border: 0; vertical-align: bottom; -ms-interpolation-mode: bicubic; }

input, button, select, option, optgroup, textarea { font-family: inherit; font-size: inherit; line-height: inherit; }

table { border-collapse: collapse; }

table th, table td { padding: 0; border: 0; text-align: left; vertical-align: baseline; }

_:-ms-input-placeholder, :root table th, :root table td { vertical-align: top; }

body { color: #343434; background: #fff; font: 100%/1.5rem 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, sans-serif; -webkit-text-size-adjust: 100%; }

.p-font-helvetica { font-family: 'Helvetica', 'Arial', sans-serif; }

.p-font-mpr1c { font-family: "Rounded Mplus 1c", "M PLUS Rounded 1c", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif; }

:root.windows .p-font-mpr1c .p-font-smoothing { display: inline-block; -webkit-transform: skewX(-0.03deg); transform: skewX(-0.03deg); }

.p-font-inherit { font: inherit; }

.p-notes { font-size: .75rem; }

.p-notes > li { display: flex; }

.p-notes > li::before { content: '※'; display: block; flex: 0 0 auto; margin-right: .5em; }

.p-body-text > p { margin-top: 1rem; }

.p-body-text > :first-child { margin-top: 0; }

.copyright-mark { font-family: Helvetica, Arial, sans-serif; line-height: 1; }

a { color: inherit; }

.p-image img, .p-image svg { width: 100%; }

.l-wrapper { background: inherit; transition: opacity .3s ease; }

.l-block { padding: 2rem 0; }

.l-inner { max-width: 960px; margin: 0 auto; padding: 0 16px; }

.p-hide-text { overflow: hidden; white-space: nowrap; text-indent: 100%; }

.p-offscreen { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); -webkit-clip-path: inset(50%); clip-path: inset(50%); }

.p-button { display: flex; justify-content: center; align-items: center; position: relative; z-index: 1; margin: 0 auto; padding: 0 8px; border-radius: 10px; box-sizing: border-box; color: #fff; background: #cf2802; text-decoration: none; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }

.p-button.icon-arrow { padding-right: 32px; padding-left: 32px; }

.p-button.icon-arrow::after { content: ''; position: absolute; top: 0; right: 24px; bottom: 0; width: 1em; height: 1em; margin: auto 0; border: solid; border-width: 3px 3px 0 0; box-sizing: border-box; font-size: 1rem; -webkit-transform: rotate(45deg); transform: rotate(45deg); }

.p-button.icon-arrow.icon-direction-up::after { top: auto; bottom: .5em; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }

.p-button.icon-arrow.icon-direction-down::after { top: .5em; bottom: auto; -webkit-transform: rotate(135deg); transform: rotate(135deg); }

.p-button .p-font-mpr1c { font-weight: 700; }

.p-image { box-sizing: border-box; }

.p-image img { width: 100%; }

.p-image-photo { border: 6px solid #fff; box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.2); }

.p-image-border { border: 1px solid #f2f2f2; }

.p-video { position: relative; max-width: 640px; margin: 2rem auto 0; }

.p-video-container { position: relative; height: 0; padding-top: 56.25%; }

.p-video-container iframe { display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; margin: auto; }

.p-figure-caption { margin-top: .5rem; font-size: .75rem; line-height: 1rem; }

.p-buy { margin: 2rem 0 0; }

.p-buy-button { max-width: 670px; height: 4rem; border: 2px solid #fff; box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.3); font-size: 1.5rem; line-height: 2rem; }

.header { position: relative; z-index: 1; height: 0; padding-top: 64%; background: url(../images/main.jpg) center/cover no-repeat; }

.header::before { content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: -1; margin: auto; }

.after .header::before { background: inherit; background-image: url(../images/main_balloon.png); }

.header > .l-block { position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; margin: auto; padding: 0; }

.header > .l-block > .l-inner { height: 100%; }

.header-id-layout { display: flex; justify-content: flex-start; align-items: center; height: 12.8vw; }

.header-id-layout-name { flex: 0 0 auto; width: 25.6%; margin-right: 16px; }

.header-id-name { height: 0; padding-top: 22.5%; background: url(../images/logo_company.png) center/contain no-repeat; }

.header-id-tagline { color: #fff; font-weight: bold; font-size: 2.666667vw; line-height: 1; }

.header-main-image { position: absolute; top: 12.8vw; right: 40%; bottom: 2.133333vw; left: 16px; margin: auto; background: url(../images/main_logo.png) center/contain no-repeat; }

.section { margin: 2rem 0 0; }

.section.l-block { margin-top: 0; }

.section-title { -webkit-font-feature-settings: 'palt'; font-feature-settings: 'palt'; }

.type .section-header { position: relative; z-index: 1; margin: 0 auto; padding: 1rem 0; background: #f2d964; }

.l-inner .type .section-header { margin: 0 -16px; }

.type .section-header::before { content: ''; position: absolute; top: 2px; right: 0; bottom: 2px; left: 0; z-index: -1; margin: auto; border: solid #fff; border-width: 1px 0; }

.type .section-header .section-heading { height: 0; padding-top: 54px; background: url(../images/type_heading.png) center/contain no-repeat; }

.type-item { margin: 2rem 0 0; }

.type-item-layout.l-flex { display: flex; align-items: center; margin: 0 0 0 -16px; }

.type-item-layout.l-flex > .l-flex-item { flex: 0 1 auto; width: calc(50% - 16px); margin: 0 0 0 16px; }

.type-item-layout-body { display: flex; flex-flow: column-reverse; min-width: 176px; margin-top: 1rem; }

.type-item-button { display: block; text-decoration: none; }

.type-item-buy { display: flex; flex-flow: column; justify-content: center; position: relative; z-index: 1; margin-top: .5rem; height: 3rem; border-radius: 1.5rem; box-sizing: border-box; color: #fff; font-size: .75rem; line-height: 1rem; text-align: center; }

.type-item-buy::before { content: ''; position: absolute; top: 0; bottom: 0; left: 0; z-index: -1; width: 100%; margin: auto 0; background: 0 100% / auto 100% no-repeat; }

.type-item-buy::after { content: '▲'; position: absolute; top: 0; right: 12px; bottom: 0; width: 1em; height: 1em; margin: auto 0; font-size: .5rem; line-height: 1; -webkit-transform: rotate(90deg); transform: rotate(90deg); }

.type-horsemeat .type-item-buy { background: #29af4b; }

.type-horsemeat .type-item-buy::before { background-image: url(../images/type_icon_horsemeat.png); }

.type-chicken .type-item-buy { background: #f78f4a; }

.type-chicken .type-item-buy::before { background-image: url(../images/type_icon_chicken.png); }

.type-fish .type-item-buy { background: #00a7cb; }

.type-fish .type-item-buy::before { background-image: url(../images/type_icon_fish.png); }

.type-item-buy-name { font-weight: 700; }

.type-item-buy-name .text-en { font-size: .9375rem; }

.type-item-buy-name .text-ja { margin: 0 -.25rem; font-size: .625rem; }

.type-item-buy-text { -webkit-font-feature-settings: 'palt'; font-feature-settings: 'palt'; }

.type-item-description .p-body-text { font-size: .8125rem; line-height: 1rem; }

.intro { background: url(../images/intro_bg.png) center 0/416.5px; }

.intro .section-header { margin: 0 auto 2rem; }

.intro .section-title { height: 0; padding-top: 17.8125%; background: url(../images/intro_title.png) center/contain no-repeat; }

.intro-series-name { margin-top: 3.2vw; font-size: 2.666667vw; line-height: 4.266667vw; text-align: center; }

.intro-about-layout-body { margin-top: 1rem; }

.media .section-heading { display: flex; justify-content: center; position: relative; z-index: 1; font: inherit; }

.media .section-heading::before { content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: -1; height: 0; margin: auto; border-top: 1px solid #cbb197; }

.media .section-heading .text { display: block; margin: 0 auto; padding: .25rem 16px; color: #fff; background: #cbb197; }

.media .subsection-heading { margin: 2rem 0 0; font-weight: 700; font-size: 1.25rem; text-align: center; }

.media-list.l-flex { display: flex; flex-flow: nowrap; justify-content: center; margin: 1rem 0 0 -8px; }

.media-list.l-flex > .l-flex-item { width: calc(100% / 3 - 8px); max-width: 230px; margin: 0 0 0 8px; }

.media-list-item { margin: 2rem auto 0; }

.media-list-item-image { background: #f2f2f2; }

.media-list-item-name, .media-list-item-date { margin-top: .5rem; line-height: 1rem; }

.media-list-item-name { font-size: .75rem; }

.media-list-item-name span { display: block; }

.media-list-item-date { font-size: .625rem; }

.factory { background: #e7f7ff url(../images/factory_bg.jpg) center 0/100% auto no-repeat; }

.factory .section-header { margin: 0 auto 2rem; color: #005aa0; }

.factory .section-header .section-title { position: relative; z-index: 1; height: 0; margin: 0 auto; padding-top: 68px; background: url(../images/factory_title.png) center/contain no-repeat; }

.factory .section-header .section-intro { position: relative; height: 160px; margin: -34px 0 0; border: 1px solid; border-radius: 5px; box-sizing: border-box; background: #fff; }

.factory .section-header .section-intro .text { position: absolute; top: 34px; right: 15px; bottom: 0; left: 15px; max-width: 272px; margin: auto; background: url(../images/factory_intro_text.png) center/contain no-repeat; }

.factory-message { max-width: 860px; margin: 0 auto; color: #525252; }

.factory-message-heading { font-size: inherit; text-align: center; }

.features {/*background: #f4f4ee url(../images/features_bg.jpg) center 0/cover no-repeat; */}

.features .section-title { max-width: 568px; margin: 0 auto; }

.features-list-item { position: relative; z-index: 1; margin: calc(2rem + 32px) 0 0; padding: calc(40px + 1rem) 12px calc(2rem - 4px); border: 4px solid #ecbc02; border-radius: 10px; box-sizing: border-box; background: #fff; }

.features-list-item::before { content: ''; position: absolute; top: -46px; right: 0; left: 0; margin: 0 auto; height: 85px; background: center 0 no-repeat; }

.features-list-item:nth-child(1)::before { background-image: url(../images/features_list_item_number_1.png); }

.features-list-item:nth-child(2)::before { background-image: url(../images/features_list_item_number_2.png); }

.features-list-item:nth-child(3)::before { background-image: url(../images/features_list_item_number_3.png); }

.features-list-item:nth-child(4)::before { background-image: url(../images/features_list_item_number_4.png); }

.features-list-item-heading { margin-bottom: 1rem; font-weight: 900; font-size: 1.5rem; text-align: center; }

.features-list-item .p-body-text { line-height: 2rem; }

.features-list-item .p-body-text > p { margin-top: 0; }

.features-list-item .p-body-text em { border-bottom: 0.1875rem solid #ff0; font-style: normal; font-weight: 700; }

.features-list-item .p-body-text .p-image { margin-top: 1rem; text-align: center; }

.features-list-item .p-body-text .p-image img { width: auto; max-width: 100%; }

.features-videos { margin: 2rem 0 0; }

.features-videos .p-figure-caption { text-align: center; }

.testimonials { background: #ffefdf; }

.testimonials .section-header .section-title { height: 0; padding-top: 33.941094%; background: url(../images/testimonials_title.png) center/contain no-repeat; }

.testimonials-list-item { margin: 2rem 0 0; padding: 1rem 16px; border-radius: 6px; box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.1); background: #fff; }

.testimonials-list-item-heading { margin: 0 0 1rem; color: #5d4021; font-size: 1.25rem; }

.testimonials-list-item-image { max-width: 230px; margin: 0 auto 1rem; }

.testimonials-list-item-from { margin-bottom: 1rem; }

.testimonials-list-item-from .name { font-weight: 700; }

.testimonials-more { margin-top: 2rem; }

.testimonials-more .p-button { height: 3rem; border-radius: 1.5rem; background: #dfbf1b; font-size: 1.25rem; }

.testimonials-more .p-button.icon-arrow::after { width: .75rem; height: .75rem; border-width: 2px 2px 0 0; }

.our-philosophy { background: #fffcf9; }

.our-philosophy-section .section-header { margin: 0 0 1rem; position: relative; padding: 0 0 0 16px; color: #29af4b; }

.our-philosophy-section .section-header .section-heading { font-weight: 500; font-size: 1.5rem; line-height: 2rem; }

.our-philosophy-section .section-header .section-heading::before { content: ''; position: absolute; top: 0; bottom: 0; left: 0; border-left: 6px solid; }

.our-philosophy-section-image { margin: 0 0 1rem; }

.ingredients { background: #fffcf9; }

.ingredients.l-block { padding-top: 0; }

.ingredients .section-title { display: flex; justify-content: center; position: relative; z-index: 1; font-size: 1.5rem; line-height: 2rem; }

.ingredients .section-title > .text { display: block; color: #4b4b4b; background: #fffcf9; padding: 0 16px; }

.ingredients .section-header-intro { margin: 1.5rem 0; font-weight: 700; font-size: 1.25rem; line-height: 2rem; text-align: center; }

.ingredients-images.l-flex { display: flex; justify-content: center; margin: 0 0 1rem -8px; }

.ingredients-images.l-flex > .l-flex-item { width: calc(100% / 3 - 8px); margin: 0 0 0 8px; }

.ingredients .p-body-text, .ingredients-philosophy { max-width: 800px; margin: 2rem auto 0; }

.ingredients-philosophy { counter-reset: ingredients-philosophy-list-counter; position: relative; margin-bottom: calc(2rem + 64px); padding: calc(1rem - 2px) 14px calc(1rem + 62px); border: 2px solid #093; border-radius: 10px; box-sizing: border-box; }

.ingredients-philosophy-badge { position: absolute; right: -16px; bottom: -64px; width: 128px; height: 128px; }

.ingredients-philosophy ol { position: relative; z-index: 1; text-shadow: 0 0 1px #fff, 0 0 1px #fff, 0 0 1px #fff, 0 0 1px #fff, 0 0 1px #fff, 0 0 1px #fff, 0 0 1px #fff, 0 0 1px #fff; }

.ingredients-philosophy li { counter-increment: ingredients-philosophy-list-counter; display: flex; align-item: flex-start; margin: 1rem 0 0; font-weight: 700; }

.ingredients-philosophy li:first-child { margin-top: 0; }

.ingredients-philosophy li::before { content: counter(ingredients-philosophy-list-counter); display: block; flex: 0 0 auto; width: 1em; color: #093; font-weight: 400; font-size: 1.5rem; line-height: 1; font-family: "Rounded Mplus 1c", "M PLUS Rounded 1c", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, sans-serif; }

.ingredients-all-heading { margin: 0 0 2rem; color: #ff7f00; font-size: 1.5rem; line-height: 2rem; text-align: center; }

.ingredients-group { margin-top: 2px; }

.ingredients-group-heading { display: flex; justify-content: center; align-items: center; position: relative; height: 3.5rem; border-radius: 0; font-size: 1.5rem; color: #4b4b4b; background: #fff4be; text-align: center; }

.ingredients .p-accordion-container { height: 0; overflow: hidden; transition: height 0.2s; }

.ingredients-list { margin: -2rem 0 0; padding: 2rem 8px 0; }

.ingredients .ingredient { margin: 2rem 0 0; }

.ingredients .ingredient-layout { display: flex; }

.ingredients .ingredient-layout-image { flex: 0 0 auto; margin-right: 16px; }

.ingredients .ingredient-layout-body { font-size: .875rem; line-height: 1.375rem; }

.ingredients .ingredient-image { width: 64px; height: 64px; border-radius: 50%; overflow: hidden; }

.ingredients .ingredient-name { color: #ff7f00; }

.ingredients .ingredient-name .icon { height: 1.25rem; margin-bottom: .0625rem; vertical-align: bottom; }

.ingredients .ingredient-description { margin-top: 1rem; }

.products.l-block { padding-top: 0; }

.products > .section-header { background: #d9eac9; }

.products > .section-header .section-title { display: flex; flex-flow: column; justify-content: center; padding: 1rem 0; text-align: center; }

.products > .section-header .section-title::before { content: ''; display: block; flex: 0 0 auto; width: 40px; height: 40px; margin: -.5rem auto .5rem; background: url(../images/products_title_icon.png) center/100% auto no-repeat; }

.products-list { padding: 1.5rem 0; background: url(../images/products_bg.jpg) center bottom/cover no-repeat; }

.products-list-item { margin: 1.5rem 0 0; border-radius: 10px; overflow: hidden; background: rgba(255, 255, 255, 0.9); }

.products-list-item:first-child { margin-top: 0; }

.products-misc .section-heading { font-size: inherit; text-align: center; }

.products-misc-heading { margin: 2rem 0 0; padding: calc(.75rem - 1px) 8px; border: 1px solid; border-radius: 1.5rem; font-size: 1.25rem; text-align: center; }

.product-misc-toppings .products-misc-heading { color: #70bd6a; }

.product-misc-furikake .products-misc-heading { color: #d67900; }

.products-misc-list.l-flex { display: flex; flex-flow: wrap; margin: 0 0 0 -32px; padding: 0 16px; }

.products-misc-list.l-flex > .l-flex-item { flex: 0 0 auto; width: calc(50% - 32px); margin: 2rem 0 0 32px; }

.products-misc-list .product { padding: 0; }

.products-misc-list .product-link { display: block; text-decoration: none; }

.products-misc-list .product-image { position: static; width: auto; height: auto; margin: 0; }

.products-misc-list .product-image img { max-height: none; margin: 0; }

.products-misc-list .product-name { margin: .5rem 0; font-size: .875rem; }

.products-misc-list .product-price, .products-misc-list .product-size { font-size: .75rem; line-height: 1rem; }

.products-misc-list .product-size { max-width: none; margin-top: 0; }

.product { padding: 0 0 1.5rem; }

.product-type { margin-bottom: 1rem; padding: .75rem 8px; color: #fff; font-weight: 700; text-align: center; }

.product[data-product-type='horsemeat'] .product-type { background: #29af4b; }

.product[data-product-type='chicken'] .product-type { background: #ee964e; }

.product[data-product-type='fish'] .product-type { background: #2c6eb0; }

.product-layout { display: flex; justify-content: flex-end; align-items: center; position: relative; z-index: 1; height: 8.25rem; }

.product-layout-image { height: 100%; }

.product-layout-body { min-width: 50%; position: realtive; z-index: 1; padding: 0 8px; text-align: center; }

.product-image { display: flex; align-items: center; position: absolute; top: 0; left: 0; z-index: -1; width: 50%; height: 100%; }

.product-image img { width: 100%; max-height: 100%; margin: 0 0 0 8px; -o-object-fit: contain; object-fit: contain; }

.product-name { font-weight: 700; font-size: .875rem; line-height: 1.375rem; }

.product-description { margin-top: .5rem; font-size: .625rem; line-height: 1rem; text-shadow: 0 0 1px #fff, 0 0 1px #fff, 0 0 1px #fff, 0 0 1px #fff, 0 0 1px #fff, 0 0 1px #fff, 0 0 1px #fff, 0 0 1px #fff; }

.product-description > .p-body-text { font-size: inherit; line-height: inherit; }

.product-size { margin: 0 auto; max-width: 200px; }

.product-size-select { width: 100%; height: 2rem; font-size: .875rem; text-align: center; }

.product-buy { margin: 1rem 0 0; padding: 0 2rem; }

.product-buy-button { height: 3rem; border-radius: 5px; }

.product-buy-button:not([href]) { background: #d2d2d2; cursor: auto; }

.about { background: #fffcf9; }

.about.l-block { margin-top: 0; }

.about .section-title { height: 0; padding-top: 6.58106%; background: url(../images/about_title.png) center/100% auto no-repeat; }

.about-section .section-heading { margin: 0 0 1rem; color: #9bc645; font-size: .875rem; }

.about-section .p-body-text { font-size: .875rem; }

.about-section .p-body-text::after { content: ''; clear: both; display: block; }

.about-section .p-body-text .p-float { float: right; max-width: 40%; margin: 0 0 0 8px; }

.about-section-video { padding: 0 8px 8px; background: #6b6b6b; }

.about-section-video-heading { margin: 0 -8px; padding: .5rem 8px; color: #fff; background: linear-gradient(to bottom, #8f8f8f, #6b6b6b); font-size: .875rem; text-align: center; }

.about-section-video .p-video { margin: 0; }

.about .profile .p-body-text { font-size: .875rem; }

.campaign .p-banner { max-width: 700px; margin: 0 auto; }

.footer { padding: 1.125rem; color: #fff; background: #a2b71f; }

.copyright { font-size: .875rem; text-align: center; }

@media screen and (max-width: 959px) { html { margin: 0; } .ingredients-group-heading.icon-arrow.icon-direction-up::after { bottom: 1em; }
  .ingredients-group-heading.icon-arrow.icon-direction-down::after { top: 1em; } }

@media screen and (max-width: 767px) { html { margin: 0; } }

@media screen and (max-width: 567px) { html { margin: 0; } html { margin: 0; } .p-body-text { font-size: .875rem; } .p-sp-scroll { overflow: auto; }
  .l-inner .p-sp-scroll { margin-right: -16px; margin-left: -16px; }
  > .l-inner .p-sp-scroll-content { padding-right: 16px; padding-left: 16px; } .intro .l-inner { padding: 0 24px; }
  .intro .l-inner .type { margin-right: -8px; margin-left: -8px; } .factory > .l-inner { padding: 0 24px; }
  .factory > .l-inner .p-sp-scroll { margin-right: -24px; margin-left: -24px; }
  .factory > .l-inner .p-sp-scroll-content { padding-right: 24px; padding-left: 24px; }
  .factory > .l-inner .p-sp-scroll-content .factory-process-item:last-child { padding-right: 24px; } .factory-process-scroll { margin: 1rem 0 0; }
  .factory-process.l-flex { display: flex; justify-content: flex-start; margin: 0 0 0 -16px; }
  .factory-process.l-flex > .l-flex-item { flex: 0 0 auto; width: 128px; margin: 0 0 0 16px; } .features { background-size: 100%; background-repeat: repeat-y; } .features-videos .p-video { max-width: 272px; } .testimonials-list-item-image { float: left; width: 33.333333%; margin-right: 16px; }
  .testimonials-list-item-from { font-size: 1.125rem; line-height: 1.75rem; }
  .testimonials-list-item .p-body-text { clear: both; } .our-philosophy-section-layout { display: flex; flex-flow: column; }
  .our-philosophy-section-layout .section-header { order: 1; }
  .our-philosophy-section-layout .our-philosophy-section-image { order: 2; }
  .our-philosophy-section-layout .section-content { order: 3; } .ingredients-images.l-flex { flex-flow: wrap; margin-top: -8px; }
  .ingredients-images.l-flex > .l-flex-item { width: calc(50% - 8px); margin-top: 8px; } .about-section-video { margin-bottom: 1rem; } .sp-none { display: none; } }

@media screen and (min-width: 568px) { html { margin: 0; } .p-body-text > p { margin-top: 1.5rem; } .l-block { padding: 4rem 0; }
  .l-flex { display: flex; margin: -1rem 0 0 -16px; }
  .l-flex > .l-flex-item { margin: 1rem 0 0 16px; }
  .l-flex-2 { flex-flow: wrap; }
  .l-flex-2 .l-flex-item { flex: 0 1 auto; }
  .l-flex-3 { flex-flow: wrap; }
  .l-flex-3 .l-flex-item { flex: 0 1 auto; }
  .l-flex-4 { flex-flow: wrap; }
  .l-flex-4 .l-flex-item { flex: 0 1 auto; } .p-figure-caption { margin-top: 1rem; font-size: .875rem; line-height: 1.25rem; } .p-sp-only { display: none; } .type .section-header { max-width: 860px; padding: 0; background: none; }
  .l-inner .type .section-header { margin: 0 auto; }
  .type .section-header::before { content: none; display: none; }
  .type .section-header .section-heading { padding-top: 6.976744%; background: url(../images/type_heading@desktop.png) 0 0/100% auto no-repeat; }
  .type-list.l-flex { justify-content: center; margin: 0 0 0 -32px; }
  .type-list.l-flex > .l-flex-item { margin: 2rem 0 0 32px; } .type-item { width: 240px; padding: 0 20px; box-sizing: border-box; }
  .type-item-layout.l-flex { display: block; margin: 0; }
  .type-item-layout.l-flex > .l-flex-item { width: auto; margin: 0; }
  .type-item-layout-body { display: block; min-width: auto; }
  .type-item-image { margin: 0 -20px; }
  .type-item-buy { max-width: 200px; height: 3.375rem; margin-top: 0; border-radius: 1.6875rem; font-size: .875rem; line-height: 1rem; }
  .type-item-buy-name .text-en { font-size: 1.25rem; }
  .type-item-buy-name .text-ja { margin: 0 -.5rem; font-size: inherit; }
  .type-item-buy-text { margin-top: .125rem; }
  .type-item-description { margin-top: .5rem; }
  .type-item-description .p-body-text { font-size: .875rem; line-height: 1.25rem; } .intro .section-header { max-width: 858px; }
  .intro .section-title { padding-top: 5.128205%; background-image: url(../images/intro_title@desktop.png); } .intro-series-name { margin-top: 1rem; font-size: .875rem; line-height: inherit; text-align: left; } .media .subsection-heading { font-size: 1.5rem; } .media-list.l-flex { margin: 1.5rem 0 0 -32px; }
  .media-list.l-flex > .l-flex-item { width: calc(100% / 3 - 32px); margin-left: 32px; }
  .media-list-item-name, .media-list-item-date { margin-top: 1rem; line-height: inherit; }
  .media-list-item-name { font-size: 1rem; }
  .media-list-item-date { font-size: .875rem; } .factory .section-header { max-width: 860px; }
  .factory .section-header .section-title { width: auto; height: 0; margin: 0 auto; padding-top: 8.0232558%; background: url(../images/factory_title@desktop.png) center 0/93.13953% auto no-repeat; }
  .factory .section-header .section-intro { margin-top: -4.069767%; padding-top: 20.930233%; height: 0; }
  .factory .section-header .section-intro .text { top: 0; right: 0; left: 0; max-width: none; background: url(../images/factory_intro_text@desktop.png) center 60%/60.72261% auto no-repeat; } .factory-message-heading { font-size: 1.25rem; } .factory-process.l-flex { justify-content: center; margin-top: 0; }
  .factory-process-item { width: 200px; margin: 2rem 0 0; } .features-list.l-flex { justify-content: center; margin: 0 0 0 -32px; }
  .features-list.l-flex > .l-flex-item { margin: calc(2.5rem + 40px) 0 0 32px; }
  .features-list-item { width: 400px; padding: calc(40px + 2rem) 36px calc(2.5rem - 4px); }
  .features-list-item-heading { margin-bottom: 1.5rem; } .features-videos { margin-top: 3rem; }
  .features-videos.l-flex { justify-content: center; margin: 0 0 0 -60px; }
  .features-videos.l-flex > .l-flex-item { width: calc(50% - 60px); max-width: 360px; margin: 2rem 0 0 60px; } .testimonials.l-block { padding: 3rem 0; } .testimonials .section-header { max-width: 776px; margin: 0 auto; }
  .testimonials .section-header .section-title { padding-top: 19.458763%; background-image: url(../images/testimonials_title@desktop.png); } .testimonials-list-item { margin-top: 3rem; padding: 2rem 32px; }
  .testimonials-list-item-heading { margin-bottom: 1.5rem; }
  .testimonials-list-item-image { margin: 0; }
  .testimonials-list-item-layout-image { flex: 0 0 auto; width: 230px; }
  .testimonials-list-item-layout-body { margin: 0 0 0 32px; } .testimonials-more { margin-top: 3rem; } .our-philosophy-section .section-header { margin-bottom: 1.5rem; padding-left: 24px; overflow: hidden; }
  .our-philosophy-section .section-header .section-heading { margin: -.5rem 0; font-size: 2rem; line-height: 3rem; }
  .our-philosophy-section-layout:after { content: ''; display: block; clear: both; }
  .our-philosophy-section-image { width: 41.666667%; margin: 0 0 1rem; }
  .our-philosophy-section:nth-child(2n-1) .our-philosophy-section-image { float: right; margin-left: 32px; }
  .our-philosophy-section:nth-child(2n) .our-philosophy-section-image { float: left; margin-right: 32px; } .ingredients .section-title::before { content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: -1; height: 0; margin: auto; border-top: 2px solid #000; } .ingredients .section-title { font-size: 2rem; line-height: 3rem; }
  .ingredients .section-title > .text { padding: 0 24px; } .ingredients .section-header-intro { margin: 2rem 0; } .ingredients-images.l-flex { margin: 0 0 2rem -16px; }
  .ingredients-images.l-flex > .l-flex-item { width: calc(100% / 3 - 16px); margin-left: 16px; }
  .ingredients .p-body-text { line-height: 2rem; }
  .ingredients-philosophy { display: flex; justify-content: center; margin-bottom: calc(2rem + 32px); padding: calc(2rem - 2px) 22px; }
  .ingredients-philosophy-badge { right: -18px; bottom: -34px; left: auto; width: 160px; height: 160px; }
  .ingredients-philosophy li { position: flex; margin-top: 1.5rem; }
  .ingredients-philosophy li::before { margin: -.25rem 0; font-size: 2rem; } .ingredients-all-heading { font-size: 2rem; line-height: 3rem; } .ingredients-list.l-flex { display: flex; flex-flow: wrap; margin: -2rem 0 0 -50px; }
  .ingredients-list.l-flex > .l-flex-item { flex: 0 0 auto; width: calc(50% - 50px); margin: 2rem 0 0 50px; } .products > .section-header .section-title { flex-flow: row; font-size: 2rem; line-height: 3rem; }
  .products > .section-header .section-title::before { width: 70px; height: 5rem; margin: -1rem 8px -1rem 0; background-position: center bottom; }
  .products > .section-header .section-title span { display: block; } .products-list { background: linear-gradient(to bottom, transparent, #fff) center bottom/100% 160px no-repeat, url(../images/products_bg.jpg) center bottom/cover no-repeat; }
  .products-list-layout.l-flex { justify-content: center; margin: 0 0 0 -16px; }
  .products-list-layout.l-flex > .l-flex-item { width: calc(50% - 16px); max-width: 300px; margin: 2rem 0 0 16px; } .products-misc .section-heading { font-size: 1.125rem; }
  .products-misc-heading { font-size: 1.5rem; line-height: 2rem; border-radius: 1.6875rem; }
  .products-misc-list.l-flex { margin: 0 0 0 -32px; padding: 0; }
  .products-misc-list.l-flex > .l-flex-item { flex: 0 0 auto; width: calc(100% / 3 - 32px); margin: 2rem 0 0 32px; padding: 0; }
  .products-misc-list-name { margin: 1rem 0; } .products-misc-list .product-name { margin: 1rem 0; } .product-layout { display: block; height: auto; }
  .product-layout-image { height: auto; }
  .product-layout-body { min-width: auto; padding: 0; }
  .product-image { display: block; position: static; width: auto; height: auto; margin: 0 8px; }
  .product-image img { width: 100%; max-height: none; margin: 0; }
  .product-name { font-size: 1.25rem; line-height: inherit; }
  .product-description { margin-top: 1rem; font-size: .875rem; line-height: inherit; text-shadow: none; }
  .product-size { margin: 1rem auto 0; max-width: 250px; }
  .product-size-select { height: 2.5rem; }
  .product-buy { margin: 1rem auto 0; padding: 0; max-width: 250px; }
  .product-buy-button { height: 3rem; border-radius: 5px; }
  .product-buy-button:not([href]) { background: #d2d2d2; cursor: auto; } .about .section-title { margin-bottom: 3rem; padding-top: 3.541667%; background: url(../images/about_title@desktop.png) center/92.5% auto no-repeat; } .about-section .section-heading { font-size: 1.5rem; line-height: 2.5rem; } .about-section-video { min-width: 300px; } }

@media screen and (min-width: 768px) { html { margin: 0; } .l-flex { margin: -2rem 0 0 -32px; }
  .l-flex > .l-flex-item { margin: 2rem 0 0 32px; } .header { padding-top: 43.333333%; background-image: url(../images/main@desktop.jpg); }
  .after .header::before { background-image: url(../images/main_balloon@desktop.png); }
  .header > .l-block > .l-inner { max-width: none; }
  .header-id-layout { height: 96px; }
  .header-id-layout-name { width: 160px; }
  .header-id-name { height: 0; padding-top: 22.5%; background: url(../images/logo_company.png) center/contain no-repeat; }
  .header-id-tagline { font-size: .875rem; line-height: 1rem; }
  .header-main-image { position: absolute; top: 8vw; right: 30%; bottom: 4vw; left: 16px; } .products-list-layout.l-flex { justify-content: center; margin-left: -30px; }
  .products-list-layout.l-flex > .l-flex-item { width: calc(100% / 3 - 30px); max-width: 300px; margin-left: 30px; } }

@media screen and (min-width: 960px) { html { margin: 0; } .l-flex { margin: -2rem 0 0 -40px; }
  .l-flex > .l-flex-item { margin: 2rem 0 0 40px; } .p-buy-button.icon-arrow { padding-right: 48px; padding-left: 48px; }
  .p-buy-button.icon-arrow::after { right: 32px; } .type { padding: 0 50px; } .intro-about-layout.l-flex > .l-flex-item { flex: 0 0 auto; width: calc(50% - 40px); }
  .intro-about-layout-image .p-image { margin-top: 1rem; }
  .intro-about-layout-body .p-body-text .p-image img[src$='logo_batsugun.png'] { margin-left: -12px; } .media-list.l-flex { margin-left: -72px; }
  .media-list.l-flex > .l-flex-item { width: calc(100% / 3 - 72px); margin-left: 72px; } .features-list.l-flex { justify-content: center; margin-left: -60px; }
  .features-list.l-flex > .l-flex-item { margin-left: 60px; } .features .p-buy { margin-top: 4rem; } .our-philosophy-section { margin-top: 4rem; }
  .our-philosophy-section:nth-child(2n-1) .our-philosophy-section-image { margin-left: 40px; }
  .our-philosophy-section:nth-child(2n-1) .section-header, .our-philosophy-section:nth-child(2n-1) .section-content { margin-right: calc(41.666667% + 40px); }
  .our-philosophy-section:nth-child(2n) .our-philosophy-section-image { margin-right: 40px; }
  .our-philosophy-section:nth-child(2n) .section-header, .our-philosophy-section:nth-child(2n) .section-content { margin-left: calc(41.666667% + 40px); } .ingredients-philosophy { padding: calc(2.5rem - 2px) 22px; }
  .ingredients-philosophy-badge { right: -26px; } .ingredients-group-heading.icon-arrow::after { font-size: 1.5rem; } .ingredients .ingredient-layout-image { margin-right: 24px; } .ingredients .ingredient-image { width: 90px; height: 90px; } .products-misc-list.l-flex { margin-left: -160px; padding: 0 50px; }
  .products-misc-list.l-flex > .l-flex-item { width: calc(100% / 3 - 160px); margin-left: 160px; }
  .product-misc-furikake .products-misc-list.l-flex { margin-left: -73px; }
  .product-misc-furikake .products-misc-list.l-flex > .l-flex-item { width: calc(100% / 4 - 73px); margin-left: 73px; } }
/*# sourceMappingURL=common.css.map */
