@charset "UTF-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, icenter, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  vertical-align: baseline;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

img {
  line-height: 1;
  vertical-align: bottom;
}

.fw-b {
  font-weight: bold;
}

.fw-n {
  font-weight: normal;
}

.fz-10 {
  font-size: 10px;
}

.fz-11 {
  font-size: 11px;
}

.fz-12 {
  font-size: 12px;
}

.fz-13 {
  font-size: 13px;
}

.fz-14 {
  font-size: 14px;
}

.fz-15 {
  font-size: 15px;
}

.fz-16 {
  font-size: 16px;
}

.fz-17 {
  font-size: 17px;
}

.fz-18 {
  font-size: 18px;
}

.fz-19 {
  font-size: 19px;
}

.fz-20 {
  font-size: 20px;
}

.fz-24 {
  font-size: 24px;
}

.fz-36 {
  font-size: 36px;
}

.d-ib {
  display: inline-block;
}

.ta-c {
  text-align: center;
}

.ta-r {
  text-align: right;
}

.txt {
  line-height: 1.5;
  letter-spacing: .08em;
}

.link-ul {
  text-decoration: underline;
}

.link-ul:hover {
  opacity: .7;
}

.color-red {
  color: #ba0000;
}

.color-orange {
  color: #f84f2c;
}

.color-orange-mypage {
  color: #ef8a00;
}

.sec-contents {
  margin: 80px 0 0;
}

.sec-contents:first-of-type {
  margin: 0;
}

.ml-8 {
  margin-left: 8px;
}

.mr-8 {
  margin-right: 8px;
}

.mb-8 {
  margin-bottom: 8px;
}

.mb-12 {
  margin-bottom: 12px;
}

.mb-16 {
  margin-bottom: 16px;
}

.mb-24 {
  margin-bottom: 24px;
}

.mb-32 {
  margin-bottom: 32px;
}

.mt-8 {
  margin-top: 8px;
}

.mt-12 {
  margin-top: 12px;
}

.mt-16 {
  margin-top: 16px;
}

.mt-24 {
  margin-top: 24px;
}

.mt-32 {
  margin-top: 32px;
}

/*------------------------------------------
 *	html, body
------------------------------------------*/
html {
  background: #fff;
  font-size: 62.5%;
}

body {
  position: relative;
  color: #0c0c0c;
  font-family: "Lato", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック体", "游ゴシック Medium", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 14px;
  line-height: 1;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  touch-action: manipulation;
}

body.is-show, body.open {
  position: fixed;
  left: 0;
  width: 100%;
}

body.is-full {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  overflow: hidden;
}

body.is-full:after {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100vw;
  height: 100vh;
  background-color: #fff;
  content: '';
}

.contents-width {
  padding: 0 4.27vw;
}

a {
  transition: all 0.1s ease;
  color: #0c0c0c;
  text-decoration: none;
}

img {
  max-width: 100%;
  height: auto;
}

area {
  border: 0;
  outline: 0;
}

/*------------------------------------------
 *	.icon
------------------------------------------*/
.ico-mypage-1_1 {
  width: 16px;
  height: 17px;
  background-size: 16px 17px;
}

.ico-mypage-1_2 {
  width: 16px;
  height: 12px;
  background-size: 16px 12px;
}

.ico-mypage-1_3 {
  width: 19px;
  height: 9px;
  background-size: 19px 9px;
}

.ico-mypage-1_4 {
  width: 18px;
  height: 18px;
  background-size: 18px 18px;
}

.ico-mypage-1_5 {
  width: 18px;
  height: 17px;
  background-size: 18px 17px;
}

.ico-mypage-1_6 {
  width: 20px;
  height: 19px;
  background-size: 20px 19px;
}

.ico-mypage-1_7 {
  width: 18px;
  height: 13px;
  background-size: 18px 13px;
}

.ico-mypage-1_8 {
  width: 9px;
  height: 11px;
  background-size: 9px 11px;
}

.ico-mypage-1_9 {
  width: 19px;
  height: 16px;
  background-size: 19px 16px;
}

.ico-mypage-1_10 {
  width: 20px;
  height: 14px;
  background-size: 20px 14px;
}

.ico-mypage-2_1 {
  width: 16px;
  height: 18px;
  background-size: 16px 18px;
}

.ico-mypage-2_2 {
  width: 18px;
  height: 16px;
  background-size: 18px 16px;
}

.ico-mypage-2_3 {
  width: 20px;
  height: 18px;
  background-size: 20px 18px;
}

.ico-mypage-2_4 {
  width: 17px;
  height: 20px;
  background-size: 17px 20px;
}

.ico-mypage-2_5 {
  width: 18px;
  height: 16px;
  background-size: 18px 16px;
}

.ico-mypage-2_6 {
  width: 20px;
  height: 20px;
  background-size: 20px 20px;
}

.ico-mypage-2_7 {
  width: 19px;
  height: 17px;
  background-size: 19px 17px;
}

.ico-mypage-2_8 {
  width: 18px;
  height: 18px;
  background-size: 18px 18px;
}

.ico-mypage-2_9 {
  width: 18px;
  height: 18px;
  background-size: 18px 18px;
}

.ico-mypage-2_10 {
  width: 19px;
  height: 16px;
  background-size: 19px 16px;
}

.ico-mypage-2_11 {
  width: 15px;
  height: 20px;
  background-size: 15px 20px;
}

.ico-mypage-3_1 {
  width: 20px;
  height: 18px;
  background-size: 20px 18px;
}

.ico-mypage-3_2 {
  width: 14px;
  height: 20px;
  background-size: 14px 20px;
}

.ico-mypage-3_3 {
  width: 13px;
  height: 20px;
  background-size: 13px 20px;
}

.ico-mypage-3_4 {
  width: 14px;
  height: 20px;
  background-size: 14px 20px;
}

.ico-mypage-3_5 {
  width: 18px;
  height: 19px;
  background-size: 18px 19px;
}

.ico-mypage-3_6 {
  width: 15px;
  height: 20px;
  background-size: 15px 20px;
}

.ico-mypage-3_7 {
  width: 17px;
  height: 20px;
  background-size: 17px 20px;
}

.ico-external-link {
  width: 16px;
  height: 16px;
  background-size: 16px 16px;
}

.ico-external-link-white {
  width: 16px;
  height: 16px;
  background-size: 16px 16px;
}

.ico-freedial {
  width: 30px;
  height: 18px;
  background-size: 30px 18px;
}

/*------------------------------------------
 *	.important-notice
------------------------------------------*/
.important-notice {
  padding: 24px 4.27vw;
  background-color: #414141;
}

.important-notice-in li {
  margin: 0 0 16px;
}

.important-notice-in li:last-child {
  margin: 0;
}

.important-notice-in li a {
  display: flex;
  align-items: center;
  color: #fff;
  letter-spacing: .06em;
  text-decoration: underline;
}

.important-notice-in li a .ico {
  margin: 0 8px 0 0;
}

.important-notice-in li a .ico-exclamation-triangle {
  width: 17px;
  height: 16px;
  background-size: 17px 16px;
}

.important-notice-in li a .ico-external-link-white {
  margin: 0 0 0 8px;
}

/*------------------------------------------
 *	#header
------------------------------------------*/
#header .tit-category {
  display: flex;
  align-items: center;
  padding: 0 4.27vw;
  min-height: 32px;
  border-top: 1px solid #c5c5c5;
  background-color: #6b6b6b;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: .06em;
}

#header .category-in .tit-category-in, #header .category-in .list-category-in .btn-sub-category {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 4.27vw;
  border-bottom: 1px solid #c5c5c5;
  box-sizing: border-box;
  font-size: 14px;
}

#header .category-in .tit-category-in a, #header .category-in .list-category-in .btn-sub-category a {
  position: relative;
  width: calc(100% - 38px);
  box-sizing: border-box;
}

#header .category-in .tit-category-in a .ico, #header .category-in .list-category-in .btn-sub-category a .ico {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

#header .category-in .tit-category-in span, #header .category-in .list-category-in .btn-sub-category span {
  position: relative;
  right: -10px;
  width: 15px;
  height: 15px;
  padding: 17px 10px;
  pointer-events: none;
}

#header .category-in .tit-category-in span:before, #header .category-in .list-category-in .btn-sub-category span:before, #header .category-in .tit-category-in span:after, #header .category-in .list-category-in .btn-sub-category span:after {
  position: absolute;
  top: 50%;
  left: 10px;
  width: 15px;
  height: 1px;
  margin: -1px 0 0;
  background-color: #6b6b6b;
  content: '';
}

#header .category-in .tit-category-in span:after, #header .category-in .list-category-in .btn-sub-category span:after {
  transform: rotate(90deg);
}

#header .category-in .tit-category-in.is-show span:after, #header .category-in .list-category-in .is-show.btn-sub-category span:after {
  transform: rotate(0);
}

#header .category-in .list-category-in li {
  position: relative;
  border-bottom: 1px solid #c5c5c5;
}

#header .category-in .list-category-in li > a {
  display: block;
  position: relative;
  padding: 18px 0 18px 1em;
  font-size: 14px;
  text-indent: 4.27vw;
}

#header .category-in .list-category-in li > a .ico {
  position: absolute;
  top: 50%;
  right: 4.27vw;
  transform: translateY(-50%);
}

#header .category-in .list-category-in .btn-sub-category {
  padding: 0 4.27vw 0 1em;
}

#header .category-in .list-category-in .btn-sub-category:not(.is-show) {
  border: none;
}

#header .category-in .list-category-in .btn-sub-category p {
  text-indent: 4.27vw;
}

#header .category-in .list-category-in .list-sub-category {
  display: none;
}

#header .category-in .list-category-in .list-sub-category li:last-child {
  border: none;
}

#header .category-in .list-category-in .list-sub-category li > a {
  padding: 18px 0 18px 2em;
}

#header .header-in {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  padding: 11px 4.27vw;
  border-bottom: 1px solid #e5e5e5;
}

#header .header-in.is-guest {
  padding: 11px 4.27vw 16px;
  border-bottom: none;
}

#header .header-in .logo {
  display: flex;
  width: 30%;
}

#header .header-in .logo a {
  display: block;
}

#header .header-in .logo a img {
  width: 120px;
}

#header .header-in .flex {
  display: flex;
  align-items: flex-end;
}

#header .header-in .flex .nav-header .nav-maypage .nav-iconlink > li,
#header .header-in .flex .nav-header .nav-login .nav-iconlink > li {
  position: relative;
  margin: 0 0 0 8px;
  font-size: 10px;
}

#header .header-in .flex .nav-header .nav-maypage .nav-iconlink > li > a .ico, #header .header-in .flex .nav-header .nav-maypage .nav-iconlink > li span .ico,
#header .header-in .flex .nav-header .nav-login .nav-iconlink > li > a .ico,
#header .header-in .flex .nav-header .nav-login .nav-iconlink > li span .ico {
  display: block;
  text-align: center;
}

#header .header-in .flex .nav-header .nav-maypage .nav-iconlink > li > a .ico-mypage, #header .header-in .flex .nav-header .nav-maypage .nav-iconlink > li span .ico-mypage,
#header .header-in .flex .nav-header .nav-login .nav-iconlink > li > a .ico-mypage,
#header .header-in .flex .nav-header .nav-login .nav-iconlink > li span .ico-mypage {
  width: 15px;
  height: 16px;
  background-size: 15px 16px;
}

#header .header-in .flex .nav-header .nav-maypage {
  display: flex;
}

#header .header-in .flex .nav-header .nav-maypage .nav-iconlink {
  display: flex;
}

#header .header-in .flex .nav-header .nav-maypage .nav-iconlink > a .ico-mypage, #header .header-in .flex .nav-header .nav-maypage .nav-iconlink span .ico-mypage {
  margin: 0 auto 4px;
}

#header .header-in .flex .nav-header .nav-maypage .nav-iconlink > a .ico-truck, #header .header-in .flex .nav-header .nav-maypage .nav-iconlink span .ico-truck {
  width: 18px;
  height: 15px;
  margin: 0 auto 5px;
  background-size: 18px 15px;
}

#header .header-in .flex .nav-header .nav-maypage .nav-iconlink .nav-maypage-status.is-important_notice .ico-sp-mypage {
  position: relative;
}

#header .header-in .flex .nav-header .nav-maypage .nav-iconlink .nav-maypage-status.is-important_notice .ico-sp-mypage:after {
  position: absolute;
  bottom: 9px;
  right: 4px;
  overflow: hidden;
  width: 6px;
  height: 6px;
  background-color: #ed2900;
  border: 3px solid #fff;
  border-radius: 50%;
  content: '';
}

#header .header-in .flex .gnav-header {
  position: relative;
  margin: 0 0 0 8px;
}

#header .header-in .flex .gnav-header .btn-gnav-header {
  position: relative;
  width: 31px;
  height: 29px;
  text-align: right;
}

#header .header-in .flex .gnav-header .btn-gnav-header.is-show .ico {
  width: 24px;
  height: 29px;
  margin: 2px 0 0;
  background: url(/front/contents/design_pc/img/common/ico_sp_close.svg) center bottom no-repeat;
  background-size: 24px 29px;
}

#header .header-in .flex .gnav-header .panel-gnav-header {
  position: absolute;
  top: 41px;
  right: -4.27vw;
  z-index: 999;
  overflow: hidden;
  width: 100vw;
  height: 0;
  background-color: #fff;
  opacity: 0;
  pointer-events: none;
  transition: all 0.1s ease;
}

#header .header-in .flex .gnav-header .panel-gnav-header.is-show {
  height: calc(100vh - 41px);
  opacity: 1;
  pointer-events: auto;
}

#header .header-in .flex .gnav-header .panel-gnav-header-in {
  overflow-y: scroll;
  height: calc(100vh - 41px);
  border-bottom: 1px solid #c5c5c5;
  -webkit-overflow-scrolling: touch;
}

#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu + .category-in {
  border-top: 1px solid #c5c5c5;
}

#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu.is-guest {
  border-top: 1px solid #c5c5c5;
}

#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu:last-child {
  margin: 0 0 180px;
  border-bottom: 1px solid #c5c5c5;
}

#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li {
  border-bottom: 1px solid #c5c5c5;
}

#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li:last-child {
  border-bottom: none;
}

#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li a,
#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li > span {
  display: block;
  position: relative;
  padding: 18px 0 18px calc(4.27vw + 25px);
}

#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li a .ico,
#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li > span .ico {
  position: absolute;
  top: 50%;
  left: 4.27vw;
  transform: translateY(-50%);
}

#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li a .ico-mypage,
#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li > span .ico-mypage {
  width: 12px;
  height: 14px;
  background-size: 12px 14px;
}

#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li a .ico-truck,
#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li > span .ico-truck {
  width: 15px;
  height: 13px;
  background-size: 15px 13px;
}

#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li a .ico-delivery,
#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li > span .ico-delivery {
  width: 14px;
  height: 14px;
  background-size: 14px 14px;
}

#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li a .ico-cart,
#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li > span .ico-cart {
  width: 15px;
  height: 13px;
  background-size: 15px 13px;
}

#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li a .ico-star,
#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li > span .ico-star {
  width: 16px;
  height: 15px;
  background-size: 16px 15px;
}

#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li a .ico-note,
#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li > span .ico-note {
  width: 14px;
  height: 16px;
  background-size: 14px 16px;
}

#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li a .ico-heart,
#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li > span .ico-heart {
  left: calc(4.27vw - 1px);
  width: 17px;
  height: 15px;
  background-size: 17px 15px;
}

#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li a .ico-yen-gray,
#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li > span .ico-yen-gray {
  left: calc(4.27vw - 1px);
  width: 17px;
  height: 15px;
  background-size: 17px 15px;
}

#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li a .ico-book-gray,
#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li > span .ico-book-gray {
  width: 18px;
  height: 13px;
  background-size: 18px 13px;
}

#header .header-in .flex .gnav-header .panel-gnav-header-in .panel-gnav-menu ul li .list-no-ico {
  padding: 18px 0 18px 4.27vw;
}

#header .header-in .flex .gnav-header .panel-gnav-header-in .category-in + .tit-category {
  border: none;
}

#header .header-in .flex .gnav-header .panel-gnav-header-in .category-in .list-category-in {
  display: none;
}

#header .header-in .flex .gnav-header .panel-gnav-header .cashless-panel-gnav-header {
  margin: 0 auto 20px;
  text-align: center;
}

#header .header-in .flex .gnav-header .panel-gnav-header .aboutus-panel-gnav-header {
  margin: 0 auto 36px;
  text-align: center;
}

#header .header-in .flex .gnav-header .panel-gnav-header .information-panel-gnav-header {
  margin: 0 auto 32px;
}

#header .header-in .flex .gnav-header .panel-gnav-header .information-panel-gnav-header ul {
  border-top: 1px solid #f90;
}

#header .header-in .flex .gnav-header .panel-gnav-header .information-panel-gnav-header ul li {
  border-bottom: 1px solid #f90;
}

#header .header-in .flex .gnav-header .panel-gnav-header .information-panel-gnav-header ul li a {
  display: block;
  position: relative;
  padding: 16px 0 16px 36px;
  font-size: 15px;
}

#header .header-in .flex .gnav-header .panel-gnav-header .information-panel-gnav-header ul li a .ico {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

#header .header-in .flex .gnav-header .panel-gnav-header .information-panel-gnav-header ul li a .ico-voice {
  left: 3px;
  width: 21px;
  height: 17px;
  background-size: 21px 17px;
}

#header .header-in .flex .gnav-header .panel-gnav-header .information-panel-gnav-header ul li a .ico-information {
  left: 5px;
  width: 16px;
  height: 16px;
  background-size: 16px 16px;
}

#header .header-in .flex .gnav-header .panel-gnav-header .information-panel-gnav-header ul li a .ico-fukidashi-dots {
  left: 4px;
  width: 18px;
  height: 16px;
  background-size: 18px 16px;
}

#header .header-in .flex .gnav-header .panel-gnav-header .information-panel-gnav-header ul li a .ico-book {
  left: 4px;
  width: 18px;
  height: 13px;
  background-size: 18px 13px;
}

#header .header-in .flex .gnav-header .panel-gnav-header .contact-panel-gnav-header {
  margin: 0 0 18px;
}

#header .header-in .flex .gnav-header .panel-gnav-header .contact-panel-gnav-header .btn-contact {
  width: 100%;
  height: 56px;
  font-size: 14px;
  font-weight: bold;
}

#header .header-in .flex .gnav-header .panel-gnav-header .contact-panel-gnav-header .btn-contact .ico {
  position: static;
  width: 20px;
  height: 13px;
  margin: 0 8px 0 0;
  background-size: 20px 13px;
  transform: none;
}

#header .header-in .flex .gnav-header .panel-gnav-header .txt-link-panel-gnav-header {
  margin: 0 0 30px;
}

#header .header-in .flex .gnav-header .panel-gnav-header .txt-link-panel-gnav-header .list-txt-link li {
  margin: 0 0 8px;
}

#header .header-in .flex .gnav-header .panel-gnav-header .txt-link-panel-gnav-header .list-txt-link li::last-child {
  margin: 0;
}

#header .header-in .flex .gnav-header .panel-gnav-header .txt-link-panel-gnav-header .list-txt-link li a {
  font-size: 12px;
}

#header .header-in .flex .gnav-header .panel-gnav-header .icon-link-panel-gnav-header ul {
  display: flex;
  justify-content: center;
  align-items: center;
}

#header .header-in .flex .gnav-header .panel-gnav-header .icon-link-panel-gnav-header ul li {
  margin: 0 24px 0 0;
}

#header .header-in .flex .gnav-header .panel-gnav-header .icon-link-panel-gnav-header ul li:last-child {
  margin: 0;
}

#header .head-term-order {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 12px 4.27vw;
  background-color: #fff;
  border-bottom: 1px solid #cac2b5;
  box-sizing: border-box;
  font-family: "Lato", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック体", "游ゴシック Medium", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

#header .head-term-order.is-fixed {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
}

#header .head-term-order .sec-term {
  width: 57.1vw;
  padding: 0 8px 0 0;
  border-right: 1px solid #e5e5e5;
}

#header .head-term-order .sec-term .select-term {
  display: flex;
  align-items: center;
  margin: 0 0 4px;
}

#header .head-term-order .sec-term .select-term .tit-select-term {
  display: flex;
  align-items: center;
  position: relative;
  font-family: "Lato", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック体", "游ゴシック Medium", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 12px;
  font-weight: bold;
  letter-spacing: .06em;
  cursor: pointer;
}

#header .head-term-order .sec-term .select-term .area-select-select-term {
  position: relative;
  overflow: hidden;
  margin: 0 0 0 4px;
  border-radius: 4px;
  background-color: #ece3d1;
}

#header .head-term-order .sec-term .select-term .area-select-select-term:after {
  position: absolute;
  top: 50%;
  right: 5px;
  width: 4px;
  height: 8px;
  margin: -4px 0 0;
  background: url(/front/contents/design_pc/img/common/ico_arrow.svg) center center no-repeat;
  background-size: 4px 8px;
  content: '';
  transform: rotate(90deg);
  pointer-events: none;
}

#header .head-term-order .sec-term .select-term .area-select-select-term select {
  width: 72px;
  padding: 2px 0px 2px 2px;
  color: #414141;
  font-size: 10px;
  letter-spacing: .04em;
  text-overflow: ellipsis;
  border: none;
  outline: none;
  background: transparent;
  background-image: none;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
}

#header .head-term-order .sec-term .select-term .area-select-select-term select::-ms-expand {
  display: none;
}

#header .head-term-order .sec-term .list-delivery-term li {
  font-size: 10px;
  line-height: 1.43;
}

#header .head-term-order .sec-order {
  width: 34.3vw;
  padding: 0 0 0 8px;
  text-align: right;
}

#header .head-term-order .sec-order a .icon-order {
  display: inline-block;
  position: relative;
  top: 9px;
  margin: 0 9px 0 0;
}

#header .head-term-order .sec-order a .icon-order .ico-cart {
  width: 20px;
  height: 18px;
  background-size: 20px 18px;
}

#header .head-term-order .sec-order a .icon-order .num {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: -8px;
  right: -7px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background-color: #f82b00;
  color: #fff;
  font-size: 10px;
  font-weight: bold;
}

#header .head-term-order .sec-order a .total-amount {
  font-size: 10px;
  letter-spacing: .06em;
}

#header .head-term-order .sec-order a .total-amount > .num {
  font-size: 15px;
  font-weight: bold;
}

#header .head-term-order .sec-order a .total-amount .tax-in {
  display: block;
  margin: 2px 0 0;
  font-size: 9px;
  text-align: right;
}

#header .head-term-order .sec-order a .total-amount .tax-in > .num {
  font-size: 10px;
  font-weight: bold;
}

#header .head-term-order .sec-order a .btn-order-accepted {
  display: block;
  position: relative;
  width: 84.4%;
  margin: 8px 0 0 auto;
  padding: 2px calc(2.7vw + 4px) 2px 2.7vw;
  border: 1px solid #6b6b6b;
  box-sizing: border-box;
  border-radius: 28px;
  font-size: 10px;
  text-align: center;
}

#header .head-term-order .sec-order a .btn-order-accepted .ico-arrow {
  position: absolute;
  top: 50%;
  right: 6px;
  transform: translateY(-50%);
}

#header .head-term-order.is-guest {
  padding: 0 4.27vw;
}

#header .head-term-order.is-guest .sec-term {
  border-right: none;
}

#header .header-search {
  padding: 10px 4.27vw;
  background: #faf6ee;
  border-bottom: 1px solid #cac2b5;
}

#header .header-search .box-search {
  position: relative;
  margin: 0 0 8px;
}

#header .header-search .box-search > form {
  display: flex;
}

#header .header-search .box-search > form > input {
  position: relative;
  width: calc(100% - 37px);
  height: 32px;
  padding: 0 0 0 16px;
  box-sizing: border-box;
  outline: 0;
  border: 1px solid #cfcfcf;
  border-right: 0;
  border-radius: 6px 0 0 6px;
  font-size: 14px;
  -webkit-appearance: none;
}

#header .header-search .box-search > form > input::placeholder {
  color: #999;
}

#header .header-search .box-search > form > .btn-delete-box-search {
  position: absolute;
  top: 8px;
  right: 40px;
  width: 18px;
  height: 18px;
  background: url(/front/contents/design_pc/img/common/ico_search_delete.svg) center center no-repeat;
  background-size: 18px 18px;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.1s ease;
}

#header .header-search .box-search > form > .btn-delete-box-search.is-show {
  opacity: .7;
  pointer-events: auto;
}

#header .header-search .box-search > form > button {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 38px;
  height: 100%;
  background-color: #fff;
  outline: 0;
  border: 1px solid #cfcfcf;
  border-left: 0;
  border-radius: 0 6px 6px 0;
  cursor: pointer;
}

#header .header-search .box-search > form > button .ico-search {
  width: 17px;
  height: 16px;
  background-size: 17px 16px;
}

#header .header-search .box-search .suggestion-search {
  position: absolute;
  top: 30px;
  left: 0;
  z-index: 3;
  overflow: hidden;
  width: 100%;
  padding: 22px 24px 16px;
  border: 1px solid #cfcfcf;
  border-top: none;
  background-color: #fff;
  box-sizing: border-box;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.08);
  font-size: 13px;
  opacity: 0;
  transition: opacity 0.1s ease;
  pointer-events: none;
}

#header .header-search .box-search .suggestion-search.is-show {
  opacity: 1;
  pointer-events: auto;
}

#header .header-search .box-search .suggestion-search .tit-suggestion-search {
  margin-bottom: 20px;
  padding: 16px 0 0;
  border-top: 1px solid #c5c5c5;
  font-size: 12px;
  font-weight: bold;
}

#header .header-search .box-search .suggestion-search li {
  margin: 0 0 16px;
}

#header .header-search .box-search .suggestion-search li .small {
  margin: 0 0 0 8px;
  font-size: 10px;
}

#header .header-search .box-search .suggestion-search .pic-item-suggestion {
  margin: 0 0 24px;
}

#header .header-search .box-search .suggestion-search .pic-item-suggestion li {
  margin: 0 0 8px;
}

#header .header-search .box-search .suggestion-search .pic-item-suggestion li:last-child {
  margin: 0;
}

#header .header-search .box-search .suggestion-search .pic-item-suggestion li a {
  display: flex;
  align-items: center;
}

#header .header-search .box-search .suggestion-search .pic-item-suggestion li a .img {
  width: 72px;
  margin: 0 16px 0 0;
  transition: all 0.1s ease;
}

#header .header-search .box-search .suggestion-search .txt-item-suggestion {
  margin: 0 0 34px;
}

#header .header-search .search-detail-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

#header .header-search .search-detail-wrapper .category-search .btn-category-search {
  display: flex;
  align-items: center;
  font-size: 11px;
  text-decoration: underline;
}

#header .header-search .search-detail-wrapper .category-search .btn-category-search .ico {
  margin: 0 4px 0 0;
}

#header .header-search .search-detail-wrapper .category-search .category-detail {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 999;
  width: 100vw;
  background-color: #fff;
  opacity: 0;
  transition: opacity 0.1s ease;
  pointer-events: none;
}

#header .header-search .search-detail-wrapper .category-search .category-detail.is-show {
  opacity: 1;
  pointer-events: auto;
}

#header .header-search .search-detail-wrapper .category-search .category-detail-in {
  height: 100vh;
  padding: 0 0 100px;
  box-sizing: border-box;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}

#header .header-search .search-detail-wrapper .category-search .category-detail .category-in .tit-category {
  border-top: none;
}

#header .header-search .search-detail-wrapper .category-search .category-detail .header-category-detail {
  position: relative;
  padding: 18px 0 20px;
  border-bottom: 1px solid #c5c5c5;
  font-size: 16px;
}

#header .header-search .search-detail-wrapper .category-search .category-detail .btn-category-close {
  position: absolute;
  top: 14px;
  right: 4.27vw;
  z-index: 999;
  width: 24px;
  height: 29px;
  content: '';
}

#header .header-search .search-detail-wrapper .search-detail {
  display: flex;
  align-items: center;
  font-size: 11px;
}

#header .header-search .search-detail-wrapper .search-detail .btn-detail-search {
  margin: 0 13px 0 0;
  padding: 0 13px 0 0;
  border-right: 1px solid #cac2b5;
  text-decoration: underline;
  cursor: pointer;
}

#header .header-search .search-detail-wrapper .search-detail .btn-detail-search.is-guest {
  border-right: none;
}

#header .header-search .search-detail-wrapper .search-detail .btn-detail-search .ico-search {
  width: 12px;
  height: 12px;
  margin: 0 4px 0 0;
  background-size: 12px 12px;
}

#header .header-search .search-detail-wrapper .search-detail .detail-search {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 5;
  width: 100vw;
  background-color: #fff;
  opacity: 0;
  transition: opacity 0.1s ease;
  pointer-events: none;
}

#header .header-search .search-detail-wrapper .search-detail .detail-search.is-show {
  opacity: 1;
  pointer-events: auto;
}

#header .header-search .search-detail-wrapper .search-detail .detail-search-in {
  position: relative;
  height: 100vh;
  padding: 22px 4.27vw 0;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}

#header .header-search .search-detail-wrapper .search-detail .detail-search-in .tit-detail-search-in {
  position: absolute;
  top: 26px;
  left: 4.27vw;
  font-size: 16px;
  letter-spacing: .08em;
}

#header .header-search .search-detail-wrapper .search-detail .detail-search .txt {
  margin: 0 0 24px;
  font-size: 14px;
  letter-spacing: .06em;
}

#header .header-search .search-detail-wrapper .search-detail .detail-search .btn-close {
  width: 24px;
  height: 29px;
  margin: 0 0 16px auto;
}

#header .header-search .search-detail-wrapper .search-detail .detail-search dl.allergen {
  padding: 25px 0 180px;
}

#header .header-search .search-detail-wrapper .search-detail .detail-search .btnArea-detail-search {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 20px 4.27vw;
  border-top: 1px solid #e2e2e2;
  border-bottom: 1px solid #e2e2e2;
  background-color: #fff;
  box-shadow: 0 0 14px rgba(0, 0, 0, 0.08);
}

#header .header-search .search-detail-wrapper .next-search a {
  text-decoration: underline;
  letter-spacing: .08em;
}

#header .header-search .search-detail-wrapper .next-search a .ico-search {
  width: 12px;
  height: 12px;
  margin: 0 4px 0 0;
  background-size: 12px 12px;
}

#header .header-search.is-guest {
  background-color: transparent;
  border: none;
}

#header .header-search.is-guest .search-detail-wrapper .category-search {
  width: 0;
  height: 0;
  opacity: 0;
}

#footer {
  margin: 20px 0 0;
  padding: 16px 0;
  border-top: 1px solid #cfcfcf;
}

#footer .footer-in {
  width: 100%;
  padding: 0 4.27vw;
  box-sizing: border-box;
}

#footer .logo-footer {
  margin: 0 auto 16px;
  text-align: center;
}

#footer .logo-footer a {
  display: inline-block;
}

#footer .logo-footer .shiga {
  width: 141px;
}

#footer .logo-footer .kyoto {
  width: 141px;
}

#footer .logo-footer .nara {
  width: 103px;
}

#footer .logo-footer .palyodo {
  width: 141px;
}

#footer .logo-footer .wakayama {
  width: 123px;
}

#footer .logo-footer .izumi {
  width: 156px;
}

#footer .nav-footer {
  margin: 0 0 20px;
}

#footer .nav-footer ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

#footer .nav-footer ul li {
  margin: 0 8px 8px 8px;
}

#footer .nav-footer ul li:last-child {
  margin: 0 8px;
}

#footer .nav-footer ul li a {
  color: #474747;
  font-size: 11px;
  letter-spacing: .06em;
  text-decoration: underline;
}

#footer .btn-pc-mode {
  width: 200px;
  margin: 0 auto 20px;
}

#footer .btn-pc-mode a {
  height: 32px;
  border: 1px solid #cfcfcf;
  border-radius: 32px;
  font-size: 11px;
  letter-spacing: .06em;
}

#footer .notice-footer {
  color: #6b6b6b;
  font-family: "Lato", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "游ゴシック体", "游ゴシック Medium", "Yu Gothic Medium", YuGothic, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 10px;
  letter-spacing: .04em;
  line-height: 1.3;
}

#footer .notice-footer .copyright {
  margin: 10px 0 0;
  font-weight: lighter;
  text-align: center;
  letter-spacing: .12em;
}

button {
  padding: 0;
  outline: none;
  border: none;
  background: none;
}

.area-btn {
  max-width: 240px;
  margin: 32px auto 0;
}

.area-btn a,
.area-btn .btn {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  height: 48px;
  border-radius: 3px;
  box-sizing: border-box;
  font-size: 15px;
  letter-spacing: .02em;
  line-height: 1.33;
  text-align: center;
}

.area-btn a + a,
.area-btn .btn + a {
  margin: 16px 0 0;
}

.area-btn a i[class*="ico-arrow"],
.area-btn .btn i[class*="ico-arrow"] {
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
}

.area-btn .btn-white {
  border: 1px solid #414141;
}

.area-btn .btn-black {
  background: #414141;
  color: #fff;
}

.area-btn .btn-blue {
  background: #00476f;
  color: #fff;
}

.area-btn .btn-red {
  background: #ba0000;
  color: #fff;
}

.area-btn .btn-orange {
  background: #ef8a00;
  color: #fff;
}

.inline-btn-submit {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 6px 12px;
  border: none;
  border-radius: 4px;
  box-sizing: border-box;
  outline: none;
  font-size: 13px;
}

.inline-btn-submit .ico {
  margin: 0 8px 0 0;
}

.inline-btn-submit:focus {
  outline: none;
}

.inline-btn-submit.btn-blue {
  background: #024c5e;
  color: #fff;
}

.inline-btn-submit.btn-white {
  background: #fff;
  border: 1px solid #414141;
}

.inline-btn-submit.btn-orange {
  background: #ef8a00;
  color: #fff;
}

.inline-btn-submit:first-child {
  margin: 0;
}

.btn-order {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 170px;
  height: 32px;
  border-radius: 16px;
  outline: 0;
  background-color: #f84f2c;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  letter-spacing: .06em;
  cursor: pointer;
}

.btn-order.is-soldout {
  background-color: #d0d0d0;
  color: #0c0c0c;
  font-weight: normal;
}

.btn-order.is-soldout:after {
  content: none;
}

.btn-order span {
  position: relative;
}

.btn-order span .ico-cart-white {
  width: 13px;
  height: 12px;
  background-size: 13px 12px;
}

.btn-order span .num {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: -5px;
  right: -10px;
  z-index: 1;
  width: 14px;
  height: 14px;
  background-color: #fff;
  border-radius: 7px;
  color: #f84f2c;
  font-size: 10px;
  letter-spacing: -.04em;
}

.area-ui-btn .btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 240px;
  margin: 0 auto;
  border: 1px solid #414141;
  border-radius: 4px;
  background-color: #fff;
  box-sizing: border-box;
  font-size: 13px;
  letter-spacing: .08em;
}

.area-ui-btn .btn .ico {
  margin: 0 8px 0 0;
}

.area-ui-btn .btn-round {
  height: 32px;
  border-radius: 16px;
}

.area-ui-btn .btn-gray {
  border: 0;
  background-color: #6b6b6b;
  color: #fff;
}

.area-ui-btn .btn-blue {
  background: #024c5e;
  color: #fff;
}

.area-ui-btn .btn-orange {
  border: 0;
  background: #ef8a00;
  color: #fff;
}

.area-ui-btn .btn-dark-gray {
  border: 0;
  background-color: #414141;
  color: #fff;
}

.area-ui-btn .btn-light-gray {
  border: 0;
  background-color: #e0e0e0;
}

.area-ui-btn.col2 .btn, .area-ui-btn.col3 .btn {
  margin: 0;
  padding: 2px;
}

.area-ui-btn.col2 .btn span, .area-ui-btn.col3 .btn span {
  position: relative;
  padding: 0 0 0 22px;
  line-height: 1.33;
}

.area-ui-btn.col2 .btn span .ico, .area-ui-btn.col3 .btn span .ico {
  position: absolute;
  top: 50%;
  left: 2px;
  margin: 0;
  transform: translateY(-50%);
}

.area-ui-btn.col2 .btn {
  width: calc(50% - 4px);
}

.area-ui-btn.col3 .btn {
  width: calc(33% - 4px);
}

#pickcoop header .logo {
  width: 127px;
  margin: 12px auto 16px;
}

#pickcoop #header {
  margin: 0 0 10px;
  padding: 0 4.27vw;
}

#pickcoop #header .txt {
  font-size: 18px;   /* 文字サイズ指定 */
  line-height: 1.57;
  letter-spacing: .06em;
  text-align: center;
}

#pickcoop #header .txt .link-ul {
  color: #ef8a00;
}

#pickcoop #header .sec-register {
  position: relative;
  width: 100%;
  margin: 30px auto 0;
  border: 2px solid #ef8a00;
  box-sizing: border-box;
}

#pickcoop #header .sec-register .tit {
  position: absolute;
  top: -8px;
  left: 50%;
  width: 256px;
  background-color: #fff;
  font-size: 14px;
  letter-spacing: .06em;
  text-align: center;
  transform: translate3d(-50%, 0, 0);
}

#pickcoop #header .sec-register ul {
  padding: 20px 0 16px;
}

#pickcoop #header .sec-register ul li {
  position: relative;
  margin: 0 0 0 54px;
  font-size: 15px;
  line-height: 1.93;
  letter-spacing: .06em;
}

#pickcoop #header .sec-register ul li::before {
  position: absolute;
  top: 50%;
  left: -16px;
  content: "";
  width: 8px;
  height: 8px;
  background-color: #ef8a00;
  border-radius: 50%;
  transform: translate3d(0, -50%, 0);
}

#pickcoop #header-before {
  margin: 0 0 24px;
}

#pickcoop .map-area {
  width: 100%;
  margin: 0 0 16px;
}

#pickcoop #main .map-area {
  position: relative;
}

#pickcoop #main .map-area .img img {
  width: 100%;
}

#pickcoop #main .map-area .btn-pickcoop {
  display: inline-block;
  position: absolute;
  width: 44.31487%;
  height: 8.19367%;
}

#pickcoop #main .map-area .btn-pickcoop.btn-kyoto {
  top: 11.82495%;
  left: 10.05831%;
}

#pickcoop #main .map-area .btn-pickcoop.btn-shiga {
  top: 23.74302%;
  left: 52.62391%;
}

#pickcoop #main .map-area .btn-pickcoop.btn-yodogawa {
  top: 28.95717%;
  left: 1.6035%;
}

#pickcoop #main .map-area .btn-pickcoop.btn-pal {
  top: 40.87523%;
  left: 1.6035%;
}

#pickcoop #main .map-area .btn-pickcoop.btn-izumi {
  top: 52.7933%;
  left: 1.6035%;
}

#pickcoop #main .map-area .btn-pickcoop.btn-nara {
  top: 60.98696%;
  left: 52.62391%;
}

#pickcoop #main .map-area .btn-pickcoop.btn-wakayama {
  top: 81.00559%;
  left: 14.43149%;
}

#pickcoop #main > .txt {
  line-height: 1.75;
}

#pickcoop .btn-backtotop {
  display: none;
}
