@charset "utf-8";
/*
	Last Update:2021/10/07
	Auther: iw
*/
/*===================================================================
	page
===================================================================*/
/* title */
#page_title {
  position: relative;
  text-align: center;
  padding: 30px 0;
}
#page_title .main {
  font-weight: bold;
  line-height: 150%;
}
@media (max-width: 575px) {
  #page_title .main {
    font-size: 1.75em;
  }
}
@media (min-width: 576px) {
  #page_title .main {
    font-size: 2.5em;
  }
}

/* pankuzu */
#pankuzu {
  padding: 10px 0;
}
#pankuzu li {
  display: inline-block;
  background: url(/image/icon_right.png) no-repeat left center / auto 13px;
}
#pankuzu ul > li:first-child {
  background: none;
  padding-left: 0;
}
#pankuzu._form_navi .center {
  text-align: center;
}
#pankuzu:not(._form_navi) li {
  padding: 0 5px 0 15px;
}
#pankuzu._form_navi ul {
  display: inline-block;
}
@media (max-width: 575px) {
  #pankuzu:not(._form_navi) {
    display: none;
  }
  #pankuzu {
    font-size: 12px;
  }
  #pankuzu._form_navi li {
    padding: 0 2px 0 10px;
  }
}
@media (min-width: 576px) {
  #pankuzu {
    font-size: 13px;
  }
  #pankuzu._form_navi li {
    padding: 0 10px 0 25px;
  }
}

#category_list {
}
#category_list .center {
  padding: 0;
}
#category_list ul {
  border-left: 1px solid #fff;
  letter-spacing: -0.4em;
}
#category_list ul > li {
  display: inline-block;
  vertical-align: top;
  border-right: 1px solid #fff;
  letter-spacing: normal;
}
#category_list ul a {
  display: block;
  color: #fff;
  text-decoration: none;
}
#category_list ul a.on {
  background: #2c0608;
}
#category_list ul a .text._l2 {
  line-height: 120%;
  padding: 10px;
}
#category_list ul a .photo {
  background-color: rgba(255, 255, 255, 0.7);
}
#category_list ul > li._all_menu,
#category_list ul > li._all_menu a,
#category_list ul > li._all_menu a .text {
  height: 100%;
}
#menu #category_list ul a .text,
#order #category_list ul a .text {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}
#menu #category_list ul a .text > span,
#order #category_list ul a .text > span {
  display: table-cell;
  vertical-align: middle;
  line-height: 100%;
}
@media (max-width: 575px) {
  #category_list ul {
    text-align: center;
  }
  #category_list ul > li {
    text-align: center;
  }
  #category_list ul > li {
    width: 33%;
  }
  #category_list ul a .text {
    padding: 10px 5px;
    min-height: 45px;
    font-size: 0.8em;
    line-height: 120%;
  }
}
@media (min-width: 576px) and (max-width: 767px) {
  #category_list ul > li {
    width: 25%;
  }
  #category_list ul a .text {
    padding: 10px 5px;
    min-height: 50px;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  #category_list ul > li {
    width: 20%;
  }
  #category_list ul a .text {
    padding: 10px 5px;
    min-height: 50px;
    font-size: 0.9em;
  }
}
@media (min-width: 992px) {
  #category_list ul > li {
    width: 165px;
  }
  #category_list ul a .text {
    padding: 15px 10px;
    min-height: 58px;
  }
  #menu #category_list ul a .text,
  #order #category_list ul a .text {
    padding: 10px;
  }
}

#page_obi .center {
  padding-top: 15px;
  padding-bottom: 15px;
}
#page_obi .title {
  padding: 5px 0;
  font-size: 1.25em;
  font-weight: bold;
}
#page_obi .title._takeout {
  background: url(../image/icon_takeout_w.png) no-repeat left center / auto 100%;
  padding-left: 50px;
}
#page_obi .title._takeout._l2 {
  padding-left: 80px;
}
#page_obi .title._phone {
  background: url(../image/icon_phone_w.png) no-repeat left center / auto 1.65em;
  padding-left: 2em;
}
#page_obi .pos_ac > .title {
  display: inline-block;
}

.page_obi .center {
  padding-top: 15px;
  padding-bottom: 15px;
}
.page_obi .title {
  padding: 5px 0;
  font-weight: bold;
}
.page_obi .title._takeout {
  background: url(../image/icon_takeout_w.png) no-repeat left center / 50px auto;
  padding-left: 60px;
}
.page_obi .title._phone {
  background: url(../image/icon_phone_w.png) no-repeat left center / auto 1.65em;
  padding-left: 2em;
}
.page_obi .title._attention {
  background: url(../image/icon_attention_w.png) no-repeat left center / 3em
    auto;
  padding-left: 4em;
}
.page_obi .pos_ac > .title {
  display: inline-block;
}
@media (max-width: 575px) {
  .page_obi .title._takeout {
    background-size: 40px auto;
    padding-left: 50px;
  }
  .page_obi .title._takeout:not(._l2) {
    margin-bottom: 10px;
  }
  .page_obi .title._takeout._l2 {
    padding-left: 50px;
    background-size: 40px auto;
  }
  .page_obi .pos_ac > .title {
    display: inline-block;
    text-align: left;
  }
}
@media (min-width: 576px) {
  .page_obi .title {
    font-size: 1.25em;
  }
  .page_obi .title._attention {
    font-size: 1.05em;
  }
  .page_obi .title._takeout._l2 {
    padding-left: 80px;
  }
}

.flat_box {
}
.form_box {
  padding: 40px 60px;
}
.attention_box .title {
  background: url(../image/icon_attention.png) no-repeat left center;
  font-weight: bold;
  margin-bottom: 30px;
}
@media (max-width: 575px) {
  .flat_box {
    padding: 20px 15px;
  }
  .form_box {
    padding: 20px 15px;
  }
  .attention_box {
    padding: 20px 15px;
    border: 6px solid #d71b1b;
  }
  .attention_box .title {
    background-position: left top;
    background-size: 40px auto;
    padding-left: 55px;
    font-size: 1.15em;
  }
}
@media (min-width: 576px) {
  .flat_box {
    padding: 30px;
  }
  .form_box {
    padding: 40px 60px;
  }
  .attention_box {
    padding: 50px;
    border: 10px solid #d71b1b;
  }
  .attention_box .title {
    background-size: 80px auto;
    padding-left: 95px;
    font-size: 1.25em;
  }
  .attention_box.p10 .title {
    line-height: 4em;
  }
}

/*===================================================================
	#menu
===================================================================*/
.menu_list_unit {
}
@media (max-width: 575px) {
  .menu_list_unit {
    margin-bottom: 10px;
  }
  .menu_list_unit a {
    display: table;
    width: 100%;
  }
  .menu_list_unit a > .photo,
  .menu_list_unit a > .text {
    display: table-cell;
    vertical-align: middle;
  }
  .menu_list_unit a > .photo {
    width: 28%;
  }
  .menu_list_unit .takeout {
    padding-top: 10px;
  }

  #order .menu_list_unit a > .photo {
    width: 40%;
  }
  #order .menu_list_unit a > .img_rect {
    padding-top: 40%;
  }
}
@media (max-width: 767px) {
  .menu_list_unit .new {
    z-index: 2;
    width: 45px;
    height: 45px;
  }
}

#menu_detail .price {
  font-weight: bold;
  font-size: 2em;
}
#menu_detail .price > span {
  font-size: 0.55em;
}

.order_delivery_banner {
  max-width: 800px;
  margin: 0 auto;
  position: relative;
}
.order_delivery_banner .text {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  color: #d71b1b;
  font-weight: bold;
}
@media (max-width: 799px) {
  .order_delivery_banner .price,
  .order_delivery_banner .price_text2 {
    font-size: 8vw;
  }
  .order_delivery_banner .price_text1 {
    font-size: 4vw;
  }
}
@media (min-width: 801px) {
  .order_delivery_banner .price,
  .order_delivery_banner .price_text2 {
    font-size: 65px;
  }
  .order_delivery_banner .price_text1 {
    font-size: 35px;
  }
}

#menu_photo .sub + .sub {
  margin-top: 10px;
}

details {
  display: block;
}
details summary {
  position: relative;
  display: block;
  outline: 0;
  cursor: pointer;
  list-style: none;
}
details summary::-webkit-details-marker {
  display: none;
}
details summary:before {
  content: "" !important;
  display: none;
}
details > div {
  transition: all 0.2s;
}

#menu_form_wrap details {
  margin-bottom: 50px;
}
#menu_form_wrap details > summary {
  padding: 0 10px;
}
#menu_form_wrap details > summary .title {
  padding: 15px 20px;
  font-weight: bold;
  font-size: 1.5em;
  background: url(../image/icon_right_w.png) no-repeat right center;
}
#menu_form_wrap details[open] > summary .title {
  background: url(../image/icon_down_w.png) no-repeat right center;
}
#menu_form_wrap details select {
  border: 1px solid #999;
  background: #fff;
}
#menu_form_wrap details.second:not(:last-child) {
  margin-bottom: 30px;
}
#menu_form_wrap details.second > summary {
  padding-left: 0;
  padding-right: 25px;
  display: flex;
  align-items: center;
}
#menu_form_wrap details.second > summary img {
  width: 75px;
}
#menu_form_wrap details.second > summary .title {
  width: calc(100% - 75px);
  background: url(../image/icon_plus.png) no-repeat right center / 30px;
  padding-right: 30px;
}
#menu_form_wrap details.second[open] > summary .title {
  background-image: url(../image/icon_minus.png);
}

#menu_form_wrap .list_dl dl {
  position: relative;
  display: flex;
  width: 100%;
  margin-bottom: 15px;
}
#menu_form_wrap .list_dl dl > * {
  display: table-cell;
  vertical-align: middle;
}
#menu_form_wrap .list_dl dt {
  width: 75px;
}
#menu_form_wrap .list_dl dd {
  width: calc(100% - 75px);
  padding-left: 15px;
  border-bottom: 1px solid #dcdcdc;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media (max-width: 575px) {
}
@media (min-width: 576px) {
  #menu_form_wrap details summary {
    padding-right: 30px;
  }
  #menu_form_wrap details > div {
    padding: 20px 30px;
  }
  #menu_form_wrap .list_dl {
    padding: 0 40px;
  }
  #menu_form_wrap details .details_content .list_dl {
    padding: 0;
  }
}
@media (max-width: 991px) {
  #menu_form_wrap .list_dl:first-child {
    padding-top: 10px;
  }
  #menu_form_wrap .list_dl dd {
    padding-right: 10px;
  }
  #menu_form_wrap .list_dl dd > * {
    width: 100%;
  }
  #menu_form_wrap .list_dl dd > .right {
    text-align: right;
  }
  #menu_form_wrap .list_dl dd > .right select {
    font-size: 14px;
  }
  #menu_form_wrap .list_dl dt {
    display: flex;
    align-items: center;
    padding-left: 10px;
  }
  #menu_form_wrap details .details_content {
    padding: 5px;
  }
  #menu_form_wrap details.second > summary img {
    width: 65px;
  }
  #menu_form_wrap details.second > summary .title {
    width: calc(100% - 65px);
    padding-top: 5px;
    padding-bottom: 5px;
  }
}

.total_box {
  text-align: right;
}
.total_box strong {
  font-size: 1.25em;
}
.dl_form {
  width: 100%;
}
.dl_form dt {
  font-weight: bold;
}
.dl_form dt > div {
  position: relative;
}
.dl_form dt .need {
  position: absolute;
  top: 2px;
  right: 0;
}
@media (max-width: 575px) {
  .dl_form dt {
    padding: 0 0 10px;
    border-bottom: 1px solid #d4d4d4;
  }
  .dl_form dd {
    padding: 10px 0 30px;
  }
}
@media (min-width: 576px) {
  .dl_form {
    display: table;
  }
  .dl_form > * {
    display: table-cell;
    padding: 15px 0;
    vertical-align: middle;
  }
  .dl_form dt {
    width: 200px;
    border-bottom: 3px solid #d71b1b;
  }
  .dl_form dd {
    padding-left: 20px;
    border-bottom: 1px solid #d4d4d4;
  }
  .dl_form .caption {
    padding-top: 15px;
  }
}

.dl_form2 dt {
  margin-bottom: 10px;
  font-weight: bold;
}
.dl_form2 dd {
  margin-bottom: 30px;
}

/*===================================================================
	#order
===================================================================*/
#order .menu_list_unit .button_area .button {
  width: 100%;
}
#order .menu_list_unit .button_area .button > span {
  display: inline-block;
  background: url(../image/icon_check_w.png) no-repeat left center / contain;
}
@media (min-width: 576px) {
  #order .menu_list_unit._order {
    padding-bottom: 50px;
  }
  #order .menu_list_unit .button_area {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
  }
}

.cart_item_list {
  margin-bottom: 50px;
}
.cart_item_list .list_head {
  margin-bottom: 10px;
}
.cart_item_list .list_body > *:nth-child(2n + 1) {
  background: #f6f6f6;
}
.cart_item_list .list_body > *:nth-child(2n) {
  background: #fbfbfb;
}
.cart_item_list .list_body .photo {
  padding-top: 10px;
  padding-bottom: 10px;
}
.cart_item_list .list_foot {
  margin-top: 10px;
}
.cart_item_list .list_foot .total {
  font-weight: bold;
}
@media (max-width: 575px) {
  .cart_item_list .list_body .number input {
    width: calc(100% - 1.25em);
  }
  .cart_item_list .list_body .total {
    font-weight: bold;
  }
  .cart_item_list .list_body .button._type1 {
    padding: 7px 15px;
  }
  .cart_item_list .list_foot {
    text-align: right;
  }
}
@media (min-width: 576px) {
  .cart_item_list .list_body .row {
    display: table;
    margin: 0;
    width: 100%;
  }
  .cart_item_list .list_body .row > * {
    display: table-cell;
    vertical-align: middle;
    float: none;
  }
  .cart_item_list .list_body .number input {
    width: calc(100% - 1.75em);
    margin-right: 5px;
  }
}

.tbl_2 {
  width: 100%;
}
.tbl_2 tbody tr > * {
  border-bottom: 1px dotted #999;
  padding: 10px 0;
}
.tbl_2 tfoot tr > * {
  padding: 20px 0;
  font-size: 1.25em;
}

/*===================================================================
	#shop
===================================================================*/
#shop .shop_unit {
  margin-bottom: 60px;
}
#shop .shop_unit .photo,
#shop .shop_unit .text {
  margin-bottom: 15px;
}
#shop .shop_unit .tel {
  display: inline-block;
  font-weight: bold;
  line-height: 110%;
  background: url(../image/icon_phone_r.png) no-repeat left center / contain;
  padding-left: 1.15em;
  margin-bottom: 5px;
}
#shop .shop_unit address {
  font-weight: bold;
  line-height: 140%;
  margin-bottom: 5px;
}
#shop .shop_unit .tel a {
  color: #d71b1b;
}
@media (max-width: 575px) {
  #shop .shop_unit .tel {
    font-size: 1.75em;
  }
  #shop .shop_unit .gmap iframe {
    max-height: 50vw;
  }
}
@media (min-width: 576px) {
  #delivery .dot_box .box_in > * {
    font-size: 1.25em;
  }
  #shop .shop_unit .photo,
  #shop .shop_unit .text,
  #shop .shop_unit .gmap {
    padding: 0 40px;
  }
  #shop .shop_unit address {
    font-size: 1.5em;
  }
  #shop .shop_unit .tel {
    font-size: 2em;
  }
  #shop .shop_unit .gmap iframe {
    max-height: 275px;
  }
}
#shop th {
  font-weight: bold;
  border-bottom: 3px solid #d71b1b;
}
#shop table {
  width: 100%;
  border-collapse: collapse;
}
#shop table th,
#shop table td {
  border-top: 1px solid #acacac;
  border-bottom: 1px solid #acacac;
  padding: 10px;
  text-align: left;
}
#shop table td {
  padding: 10px;
  vertical-align: top;
}
.wbr-enable {
  word-break: keep-all;
  overflow-wrap: break-word;
}

/*===================================================================
	#guide
===================================================================*/
#guide_tel {
}
.tel_list {
  display: table;
  width: 100%;
  margin-bottom: 10px;
}
.tel_list > * {
  display: table-cell;
  vertical-align: top;
}
.tel_list dt {
  width: 100px;
}
.tel_list dd {
  background: url(../image/icon_phone.png) no-repeat left center / 1em auto;
  padding-left: 1.15em;
}
@media (min-width: 576px) {
  .tel_list {
    font-size: 1.25em;
  }
}

/*===================================================================
	#company
===================================================================*/
.tbl_1 {
  width: 100%;
}
.tbl_1 tr > * {
  padding: 15px 0;
  vertical-align: middle;
}
.tbl_1 th {
  border-bottom: 3px solid #d71b1b;
}
.tbl_1 td {
  border-bottom: 1px solid #d4d4d4;
}
@media (max-width: 575px) {
  .tbl_1 {
    font-size: 0.9em;
  }
  .tbl_1 th {
    width: 100px;
  }
  .tbl_1 td {
    padding-left: 15px;
  }
  #group .tbl_1 tr > td:first-child {
    width: 100px;
    padding-left: 0;
  }
}
@media (min-width: 576px) {
  .tbl_1 th {
    width: 200px;
  }
  .tbl_1 td {
    padding-left: 20px;
  }
}

/*===================================================================
	#news
===================================================================*/
.info_list2 {
}
.info_list2 a {
  display: block;
  text-decoration: none;
  margin-bottom: 15px;
}
.info_list2 a dt > * {
  vertical-align: middle;
}
.info_list2 a dt .date {
  display: inline-block;
  background: #efefef;
  padding: 3px 10px;
  width: 110px;
  text-align: center;
}
.info_list2 a dt .need {
  padding: 9px 10px 8px;
}
.info_list2 a dd {
  border-bottom: 1px dotted #ababab;
  padding: 10px 15px;
  text-decoration: underline;
}
body.pc .info_list2 a:hover dd {
  text-decoration: none;
}

#news #body .photo {
  margin-bottom: 40px;
}

/*===================================================================
	mypage
===================================================================*/
#regist {
}
.form_wrap {
  display: inline-block;
  width: 100%;
}
.form_wrap > span {
  display: inline-block;
  padding-right: 10px;
}
.form_wrap > span.w1em {
  width: 2em;
}
.form_wrap > span.w2em {
  width: 3em;
}
.form_wrap > span.w4em {
  width: 5em;
}
.form_wrap > span.w5em {
  width: 6em;
}
.form_wrap > span.w7em {
  width: 8em;
}
.form_wrap > span.w1em + input[type="tel"] {
  width: calc(100% - 2.5em);
}
.form_wrap > span.w2em + input[type="text"] {
  width: calc(100% - 3.5em);
}
.form_wrap > span.w4em + input[type="text"] {
  width: calc(100% - 5.5em);
}
.form_wrap > span.w5em + input[type="text"] {
  width: calc(100% - 6.5em);
}
.form_wrap > span.w7em + input[type="text"] {
  width: calc(100% - 8.5em);
}

#remined_area .button_area {
  border-top: 1px solid #ccc;
  padding: 30px 0 0;
  text-align: center;
}
#remined_area .button_area .disp_ib {
  text-align: left;
}

/*===================================================================
	.entry
===================================================================*/
.entry {
  text-align: left;
}
.entry img {
  height: auto !important;
}
.entry a {
  text-decoration: underline;
}
body.pc .entry a:hover {
  text-decoration: none;
}

.entry p {
  margin-bottom: 10px;
}
.entry p + ul,
.entry p + ol {
  margin-top: 20px;
}
.entry ul,
.entry ol {
  list-style: none;
  list-style-type: none;
  margin-bottom: 20px;
}
.entry ul > li,
.entry ol > li {
  position: relative;
  margin: 0 0 5px 20px;
}
.entry ul > li:before {
  color: #d71b1b;
  content: "■";
  font-size: 10px;
  position: absolute;
  top: 6px;
  left: -18px;
}
.entry ul > li > ul {
  margin-top: 5px;
  margin-bottom: 5px;
}
.entry ul > li ul > li:before {
  color: #ff8800;
  content: "●";
  font-size: 8px;
  top: 8px;
  left: -16px;
}
.entry ol {
  counter-reset: ol_li;
}
.entry ol > li:before {
  color: #d71b1b;
  counter-increment: ol_li;
  content: counter(ol_li) ".";
  position: absolute;
  top: 1px;
  left: -20px;
  font-weight: bold;
}
.entry ol > li > ol {
  margin-top: 5px;
  margin-bottom: 5px;
}
.entry ol > li ol > li:before {
  color: #ff8800;
}

.entry dl {
  margin-bottom: 20px;
}
.entry dt {
  font-weight: bold;
  margin-bottom: 10px;
}
.entry dd + dt {
  border-top: 1px dotted #ccc;
  padding-top: 15px;
  margin-top: 15px;
}

.entry table {
  margin-bottom: 20px;
  width: 100%;
}
.entry th,
.entry td {
  padding: 10px;
  border: 1px solid #ccc;
  vertical-align: middle;
}
.entry thead tr > * {
  color: #fff;
  font-weight: bold;
}
.entry thead th {
  background: #6c2c33;
}
.entry thead td {
  background: #641e24;
}
.entry tbody th {
  background: #fff8f5;
  font-weight: bold;
}

.entry p + h2,
.entry p + h3,
.entry p + h4,
.entry ul + h2,
.entry ul + h3,
.entry ul + h4,
.entry ol + h2,
.entry ol + h3,
.entry ol + h4 {
  margin-top: 40px;
}

.entry h2 {
  border-bottom: 1px solid #afafaf;
  font-weight: bold;
  line-height: 120%;
  font-size: 1.5em;
  padding: 0 0 15px;
  margin-bottom: 15px;
}
.entry h3 {
  border-bottom: 1px solid #afafaf;
  font-weight: bold;
  line-height: 120%;
  font-size: 1.25em;
  padding: 0 0 15px;
  margin-bottom: 15px;
}
.entry h4 {
  border-bottom: 1px solid #afafaf;
  background: #f9f9f9;
  font-weight: bold;
  line-height: 120%;
  font-size: 1.15em;
  padding: 10px;
  margin-bottom: 15px;
}

.entry .flyer_button_wrap {
  text-align: left;
}
@media (max-width: 575px) {
  .entry .flyer_button_wrap {
    text-align: center;
  }
}

.history_list_wrap .cart_item_list .list_body {
  border-bottom: 2px solid #fff;
}
.history_list_wrap .cart_item_list .list_body .unit_cancel {
  background: #f6f6f6 !important;
}
.history_list_wrap .cart_item_list .list_body > *:nth-child(2n + 1) {
  background: none;
}
.history_list_wrap .cart_item_list .list_body .unit_receiving {
  background: #eaeaea !important;
}
.history_list_wrap .unit_icon {
  background: url(../../common/image/icon_cancel.png) no-repeat left center /
    1em auto;
  padding: 0 10px 0 30px !important;
}
.history_list_wrap .unit_btn {
  margin-right: 20px;
}
.history_list_wrap .unit_btn > * {
  margin: 10px 0px 0px 10px;
}
.history_list_wrap .unit_back {
  background-color: #d8d8d8;
  padding: 5px 7px;
  margin-right: 5px;
}
.history_list_wrap .unit_bottom {
  margin-bottom: 10px;
}
.history_list_wrap .unit_space {
  padding: 0 0 0 7px;
}
.history_list_wrap .unit_cancel_tag {
  background: #d71b1b;
  padding: 4px 10px;
  border-radius: 5px;
}
@media (min-width: 576px) {
  .history_list_wrap .cart_item_list .list_body .row {
    padding: 10px 0;
  }
  .history_list_wrap .cart_item_list .list_body .row > * {
    display: flex;
    align-items: center;
  }
}
@media (max-width: 575px) {
  .history_list_wrap .cart_item_list .list_body .row > * {
    padding-bottom: 15px;
    margin: 20px auto 0 auto;
    border-bottom: 3px solid #ffffff;
  }
}
@media (max-width: 705px) {
  .history_list_wrap .button._type1 {
    padding: 15px 7px;
  }
  .history_list_wrap .button._type1 > span,
  .history_list_wrap .button._type1 > span.bag {
    padding: 0 0 0 15px !important;
  }
}
