@charset "UTF-8";
.mv-section {
  margin-bottom: 6rem;
}
@media screen and (min-width: 960px) {
  .mv-section {
    margin-bottom: 12rem;
  }
}

/* =============================================
 ###　news
============================================= */
.news-section {
  position: relative;
  padding: 0 3rem;
  margin-bottom: 7rem;
}
@media screen and (min-width: 960px) {
  .news-section {
    margin-bottom: 10rem;
  }
}
@media screen and (min-width: 960px) {
  .news-section .wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    z-index: 10;
    max-width: 96rem;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 960px) {
  .news-section dl {
    width: 720px;
  }
}
.news-section dl dt {
  color: #959595;
  font-weight: normal;
}
@media screen and (min-width: 960px) {
  .news-section dl dt {
    font-size: 1.6rem;
    float: left;
  }
}
.news-section dl dd {
  padding-bottom: 13px;
  border-bottom: 1px solid #e3e3e3;
  margin-bottom: 15px;
  color: #333333;
}
.news-section dl dd:last-of-type {
  margin-bottom: 0;
}
@media screen and (min-width: 960px) {
  .news-section dl dd {
    font-size: 1.6rem;
    padding-left: 130px;
    margin-bottom: 3rem;
    padding-bottom: 3rem;
  }
}

/* =============================================
 ###　concept
============================================= */
.concept-section {
  text-align: center;
}
.concept-section .headline1_wrap {
  background-image: url(/comemari/libs_v2/img/concept_ttL_bg.png);
  background-size: 100% auto;
  width: 71.2%;
  margin-left: auto;
  margin-right: auto;
  padding: 35px 0 0;
}
@media screen and (min-width: 960px) {
  .concept-section .headline1_wrap {
    width: 391px;
    padding: 50px 0 20px;
  }
}
@media screen and (min-width: 960px) {
  .concept-section .section_inner {
    width: 640px;
    margin-left: auto;
    margin-right: auto;
    padding: 0;
  }
}
.concept-section .lead {
  text-align: center;
}
@media screen and (min-width: 960px) {
  .concept-section .lead {
    font-size: 3rem;
  }
}
.concept-section .content_text {
  margin-bottom: 3rem;
}
@media screen and (min-width: 960px) {
  .concept-section .content_text {
    text-align: center;
    margin-bottom: 8rem;
  }
}

/* =============================================
 ###　こだわり
============================================= */
.bg_container {
  padding-top: 7rem;
  background-image: url(/comemari/libs_v2/img/bg_sp.jpg);
  background-size: 100% auto;
  background-repeat: repeat-y;
}
@media screen and (min-width: 960px) {
  .bg_container {
    padding-top: 8rem;
    background-image: url(/comemari/libs_v2/img/bg_desk.jpg);
  }
}

.selected-section {
  text-align: center;
  margin-bottom: 7rem;
}
@media screen and (min-width: 960px) {
  .selected-section {
    margin-bottom: 20rem;
  }
}
.selected-section .content_image {
  margin-bottom: 3rem;
}
@media screen and (min-width: 960px) {
  .selected-section .section_inner {
    width: 940px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 20px;
    display: grid;
    grid-template-columns: 450px 360px;
    justify-content: space-between;
    align-items: center;
  }
  .selected-section .section_inner .headline1 {
    grid-column: 1/-1;
  }
}
@media screen and (min-width: 960px) {
  .selected-section .content_lead {
    text-align: left;
  }
}

/* =============================================
 ###　PRODUCTS
============================================= */
.products-section {
  position: relative;
  text-align: center;
  margin-bottom: 7rem;
}
.products-section .products-section_headline {
  text-align: center;
}
.products-section .element {
  position: relative;
  z-index: 10;
}
.products-section .product_info {
  margin-bottom: 3rem;
}
@media screen and (min-width: 960px) {
  .products-section .product_info {
    text-align: center;
    width: 940px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 8rem;
  }
  .products-section .product_info .content_text {
    text-align: center;
  }
}
.products-section .productsList {
  margin-bottom: 5rem;
}
.products-section .productsList .product_single_image {
  margin-bottom: 3rem;
}
@media screen and (min-width: 960px) {
  .products-section .productsList .image {
    margin-bottom: 100px;
  }
}
.products-section .productsList .products_list {
  display: grid;
  gap: 4rem;
}
.products-section .products_list_item {
  display: grid;
  gap: 3rem;
  padding: 0 1.5rem;
}
@media screen and (min-width: 960px) {
  .products-section .products_list_item {
    padding: 0;
  }
}
.products-section .products_list_item .txBlock {
  display: contents;
}
@media screen and (min-width: 960px) {
  .products-section .products_list_item .txBlock {
    display: block;
    display: grid;
    gap: 25px;
  }
}
@media screen and (min-width: 960px) {
  .products-section .products_list_item.consomme, .products-section .products_list_item.takoyaki {
    grid-column: 1/-1;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .products-section .products_list_item.consomme .productImg2, .products-section .products_list_item.takoyaki .productImg2 {
    width: 455px;
    order: 1;
  }
  .products-section .products_list_item.consomme .productImg1, .products-section .products_list_item.takoyaki .productImg1 {
    width: 455px;
    order: 0;
  }
  .products-section .products_list_item.consomme .txBlock, .products-section .products_list_item.takoyaki .txBlock {
    width: 455px;
    display: block;
    order: 2;
    display: grid;
    gap: 25px;
  }
}
.products-section .productImg1 {
  width: 85%;
  margin-left: auto;
  margin-right: auto;
}
.products-section .productName {
  margin-left: auto;
  margin-right: auto;
  font-size: 2.1rem;
  color: #000;
  font-weight: 500;
}
.products-section .productSpec {
  text-align: center;
}
.products-section .productSpec .productPrice {
  font-size: 1.6rem;
}
@media screen and (min-width: 960px) {
  .products-section .productSpec .productPrice {
    font-size: 2rem;
  }
}
.products-section .productSpec .productPrice strong {
  font-weight: normal;
  font-size: 2.1rem;
}
@media screen and (min-width: 960px) {
  .products-section .productSpec .productPrice strong {
    font-size: 2.8rem;
  }
}
.products-section .productSpec .productPrice .tax-separate {
  font-size: 1.4rem;
}
@media screen and (min-width: 960px) {
  .products-section .productSpec .productPrice .tax-separate {
    font-size: 1.6rem;
  }
}
.products-section .productSpec .productCapacity {
  font-size: 1.4rem;
}
@media screen and (min-width: 960px) {
  .products-section .productSpec .productCapacity {
    font-size: 1.6rem;
  }
}
.products-section .productInfo .productCopy {
  font-size: 1.6rem;
  text-align: center;
  font-weight: 700;
  margin-bottom: 2rem;
}
@media screen and (min-width: 960px) {
  .products-section .productInfo .productCopy {
    font-size: 2.2rem;
  }
}
.products-section .productInfo .productCopy::after {
  content: "";
  margin-top: 10px;
  width: 100%;
  background-image: url(/comemari/libs_v2/img/line1.svg);
  aspect-ratio: 630/30;
  background-size: contain;
  display: block;
}
@media screen and (min-width: 960px) {
  .products-section .productInfo .productCopy::after {
    aspect-ratio: inherit;
    height: 16px;
    background-size: auto 16px;
    background-repeat: repeat-x;
  }
}
.products-section .productInfo .productText {
  line-height: 2em;
  text-align: left;
}
@media screen and (min-width: 960px) {
  .products-section .productInfo .productText {
    font-size: 1.6rem;
  }
}
.products-section .productInfo .set_content {
  border: 1px solid #3f3d82;
  padding: 1.5rem;
  margin-bottom: 2rem;
  background: #fff;
}
@media screen and (min-width: 960px) {
  .products-section .productInfo .set_content {
    padding: 2rem;
    margin-bottom: 0;
  }
}
.products-section .productInfo .set_content .set_content_ttl {
  font-size: 1.4rem;
  color: #3f3d82;
  text-align: center;
  margin-bottom: 1rem;
}
@media screen and (min-width: 960px) {
  .products-section .productInfo .set_content .set_content_ttl {
    font-size: 1.8rem;
    text-align: left;
  }
}
.products-section .productInfo .set_content ul {
  text-align: left;
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.products-section .productInfo .set_content ul li {
  font-size: 1.1rem;
  color: #3f3d82;
}
@media screen and (min-width: 960px) {
  .products-section .productInfo .set_content ul li {
    font-size: 1.4rem;
  }
}
.products-section .productInfo .set_content ul li::before {
  content: "・";
  color: #787162;
}
.products-section .btn_buy {
  width: 26rem;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 960px) {
  .products-section .btn_buy {
    width: 256px;
  }
}
.products-section .btn_buy a {
  background-color: #3f3d82;
  display: block;
  position: relative;
  text-align: center;
  padding: 15px 20px 12px 35px;
  border-radius: 30px;
  color: #fff;
  font-size: 1.4rem;
}
@media screen and (min-width: 960px) {
  .products-section .btn_buy a {
    font-size: 1.6rem;
  }
}
.products-section .btn_buy a::before {
  content: "";
  width: 16px;
  height: 16px;
  background-image: url(/comemari/libs_v2/img/icon_cart.png);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  left: 35px;
  transform: translateY(-50%);
}
.products-section .btn_buy a::after {
  content: "";
  width: 10px;
  height: 8px;
  background-image: url(/comemari/libs_v2/img/icon_arrow1.png);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  right: 25px;
  top: 50%;
  transform: translateY(-50%);
}
.products-section .ingredient .ttl {
  background-color: #f1f1f1;
  margin-bottom: 10px;
  padding: 10px 0;
  text-align: center;
  color: #333333;
  font-size: 1.5rem;
  position: relative;
}
.products-section .ingredient .ttl::after {
  content: "";
  width: 10px;
  height: 10px;
  background-image: url(/comemari/libs/img/common/icon_plus.png);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  display: block;
  top: 50%;
  right: 10px;
  margin-top: -5px;
}
.products-section .ingredient .ttl.is-active::after {
  background-image: url(/comemari/libs/img/common/icon_minus.png);
  margin-top: 0;
}
@media screen and (min-width: 960px) {
  .products-section .ingredient .ttl {
    padding: 15px 20px;
    font-size: 1.6rem;
    text-align: left;
  }
}
.products-section .ingredient .text {
  font-size: 1.2rem;
  line-height: 2em;
  margin-bottom: 30px;
  color: #979797;
  text-align: left;
  display: none;
}
@media screen and (min-width: 960px) {
  .products-section .ingredient .text {
    font-size: 1.4rem;
  }
}
.products-section .ingredient .text:last-of-type {
  margin-bottom: 0;
}
.products-section .ingredient .text.is-active {
  display: block;
}
.products-section .product_single .productName {
  width: 13rem;
}
@media screen and (min-width: 960px) {
  .products-section .product_single .productName {
    width: 153px;
  }
}
@media screen and (min-width: 960px) {
  .products-section .product_single .products_list {
    grid-template-columns: repeat(2, 1fr);
    row-gap: 8rem;
  }
}
.products-section .product_assort .products_list {
  gap: 5rem;
}
.products-section .product_assort .product_assort_image {
  margin-bottom: 3rem;
}
.products-section .product_assort .product_assort_tx {
  padding: 0 3rem;
  line-height: 2em;
  margin-bottom: 6rem;
}
.products-section .product_assort .products_list_item {
  gap: 1rem;
}
@media screen and (min-width: 960px) {
  .products-section .product_assort .products_list_item {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}
.products-section .product_assort .productImg {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
.products-section .product_assort .productCopy {
  font-size: 1.5rem;
  font-weight: 500;
  display: grid;
  grid-template-columns: 11px 1fr;
  gap: 10px;
}
@media screen and (min-width: 960px) {
  .products-section .product_assort .productCopy {
    font-size: 1.8rem;
    display: flex;
    justify-content: center;
  }
}
.products-section .product_assort .productCopy::before {
  content: "";
  display: block;
  background-image: url(/comemari/libs_v2/img/icon_mark1.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 11px;
  aspect-ratio: 44/56;
  margin-top: 5px;
}
@media screen and (min-width: 960px) {
  .products-section .product_assort .productCopy::before {
    margin-top: 8px;
  }
}
.products-section .product_assort .ingredient .ttl {
  background-color: #F1F1F1;
}
.products-section .product_assort .btn_buy a {
  border: 1px solid #333333;
}

.product_note ul {
  display: grid;
  row-gap: 10px;
}
.product_note ul li {
  display: grid;
  grid-template-columns: 1.6rem 1fr;
  text-align: left;
}
.product_note ul li::before {
  content: "※";
}
@media screen and (min-width: 960px) {
  .product_note ul li {
    display: flex;
    font-size: 1.2rem;
  }
}

/* =============================================
 ### 店舗案内
============================================= */
.shop-section {
  background-color: #f5f5f5;
  margin-bottom: 50px;
}
@media screen and (min-width: 960px) {
  .shop-section {
    margin-bottom: 80px;
  }
}
.shop-section .wrapper {
  background-image: url(/comemari/libs_v2/img/shop_bg.png);
  background-size: contain;
  background-position: center bottom;
  background-repeat: no-repeat;
  padding-top: 5.5rem;
  padding-bottom: 5.5rem;
}
@media screen and (min-width: 960px) {
  .shop-section .wrapper {
    margin-bottom: 80px;
    padding: 80px 0;
    background-position: 0 bottom;
  }
}
.shop-section .txBlock {
  text-align: center;
}
@media screen and (min-width: 960px) {
  .shop-section .txBlock {
    display: grid;
    grid-template-columns: 30% 30% 40%;
    align-items: center;
  }
}
@media screen and (min-width: 960px) {
  .shop-section .txBlock .headline1 {
    margin-bottom: 0;
  }
}
.shop-section .txBlock .shop_name {
  font-weight: 700;
  margin-bottom: 1em;
}
@media screen and (min-width: 960px) {
  .shop-section .txBlock .shop_name {
    font-size: 1.6rem;
    margin-bottom: 0;
  }
}
.shop-section .txBlock .text a {
  text-decoration: underline;
}
.shop-section .txBlock .sub {
  font-size: 1.2rem;
  margin-top: 30px;
}
@media screen and (min-width: 960px) {
  .shop-section .txBlock .sub {
    font-size: 1.4rem;
  }
}
.shop-section .image {
  margin-bottom: 35px;
}
@media screen and (min-width: 960px) {
  .shop-section .image {
    width: 630px;
  }
}/*# sourceMappingURL=top.css.map */