@charset "UTF-8";
/*　*/
/**************************************************
		Header
**************************************************/
.l-header {
  position: relative;
  overflow: hidden;
}

.l-header_container {
  position: relative;
  z-index: 20;
}

@media only screen and (max-width: 767px) {
  .l-header_container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: #669A5B;
  }
}

@media print, screen and (min-width: 768px) {
  .index .l-header_container {
    background: #669A5B;
  }
}

.l-header_inner {
  position: relative;
  height: 4.5rem;
}

@media print, screen and (min-width: 768px) {
  .l-header_inner {
    margin: 0 auto;
    border-bottom: 0.3rem solid #669A5B;
    width: 120rem;
    height: 6rem;
    box-sizing: content-box;
  }
  .index .l-header_inner {
    border-bottom: 0;
    box-sizing: border-box;
  }
}

.l-header_logo {
  position: absolute;
  top: 0;
  left: 0;
  padding: 1rem 1.5rem;
  line-height: 0;
  z-index: 20;
}

@media print, screen and (min-width: 768px) {
  .l-header_logo {
    padding: 1.5rem 0;
  }
}

.l-header_logo a {
  display: block;
}

.index .l-header_logo a {
  position: relative;
  width: 27rem;
  height: 2.5rem;
  text-indent: 500%;
  white-space: nowrap;
  overflow: hidden;
}

@media print, screen and (min-width: 768px) {
  .index .l-header_logo a {
    width: 32.5rem;
    height: 3rem;
  }
}

.index .l-header_logo a::before {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  background: transparent url("../img/common/logo_white.png") 50% 50% no-repeat;
  background-size: contain;
  content: "";
}

@media only screen and (max-width: 767px) {
  .l-header_logo img {
    width: 27rem;
  }
}

@media print, screen and (min-width: 768px) {
  .l-header_logo img {
    width: 32.5rem;
  }
}

@media print, screen and (min-width: 768px) {
  .l-header_mainMenu {
    display: none;
  }
}

.l-header_mainMenu_btnOpen {
  position: absolute;
  top: 0;
  right: 0;
  width: 4.5rem;
  height: 4.5rem;
  text-indent: 500%;
  white-space: nowrap;
  overflow: hidden;
  cursor: pointer;
}

.l-header_mainMenu_btnOpen::before {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 4.5rem;
  height: 4.5rem;
  background: transparent url("../img/header/icon_menu.png") 50% 50% no-repeat;
  background-size: contain;
  content: "";
}

.l-header_mainMenu_contents {
  position: absolute;
  top: 0;
  left: 0;
  padding-top: 5rem;
  width: 100%;
  background: #7E7E7E;
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  transition: opacity 0.4s, visibility 0.4s, -webkit-transform 0.4s;
  transition: transform 0.4s, opacity 0.4s, visibility 0.4s;
  transition: transform 0.4s, opacity 0.4s, visibility 0.4s, -webkit-transform 0.4s;
  z-index: 10;
}

.l-header_mainMenu_container {
  position: relative;
  height: calc(100vh - 5rem);
  overflow-y: auto;
}

.l-header_mainMenu_list {
  padding-bottom: 3rem;
  line-height: 0;
}

.l-header_mainMenu_list li {
  border-bottom: 1px solid #BFBFBF;
}

.l-header_mainMenu_list a {
  display: block;
  padding: 2.4rem 2rem 1rem 2rem;
}

.l-header_mainMenu_list img {
  height: 2.2rem;
}

.l-header_mainMenu_btnClose {
  position: absolute;
  top: 0;
  right: 0;
  width: 4.5rem;
  height: 4.5rem;
  text-indent: 500%;
  white-space: nowrap;
  overflow: hidden;
  cursor: pointer;
}

.l-header_mainMenu_btnClose::before {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 4.5rem;
  height: 4.5rem;
  background: transparent url("../img/header/icon_close.png") 50% 50% no-repeat;
  background-size: contain;
  content: "";
}

.l-header_subMenu {
  position: absolute;
  top: 1.5rem;
  right: 25rem;
  z-index: 20;
}

@media only screen and (max-width: 767px) {
  .l-header_subMenu {
    display: none;
  }
}

.l-header_subMenu_list {
  display: flex;
  line-height: 0;
  align-items: center;
}

.l-header_subMenu_list a {
  display: block;
  padding: 1rem 0.7rem;
}

@media print, screen and (min-width: 768px) {
  .l-header_subMenu_list a:hover {
    opacity: 0.7;
  }
}

.l-header_subMenu_list span {
  display: block;
}

.index .l-header_subMenu_list span {
  position: relative;
  height: 1.2rem;
  text-indent: 500%;
  white-space: nowrap;
  overflow: hidden;
}

.index .l-header_subMenu_list span::before {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  background: transparent none 50% 50% no-repeat;
  background-size: contain;
  content: "";
}

.l-header_subMenu_list img {
  height: 1.2rem;
}

.index .l-header_subMenu_btnHome span {
  width: 6.6rem;
}

.index .l-header_subMenu_btnHome span::before {
  background-image: url(../img/header/btn_home_white.png);
}

.index .l-header_subMenu_btnItems span {
  width: 6rem;
}

.index .l-header_subMenu_btnItems span::before {
  background-image: url(../img/header/btn_items_white.png);
}

.index .l-header_subMenu_btnAbout span {
  width: 8.2rem;
}

.index .l-header_subMenu_btnAbout span::before {
  background-image: url(../img/header/btn_about_white.png);
}

.index .l-header_subMenu_btnGuide span {
  width: 7rem;
}

.index .l-header_subMenu_btnGuide span::before {
  background-image: url(../img/header/btn_guide_white.png);
}

.index .l-header_subMenu_btnOrder span {
  width: 4.8rem;
}

.index .l-header_subMenu_btnOrder span::before {
  background-image: url(../img/header/btn_order_white.png);
}

.index .l-header_subMenu_btnRakuten span {
  width: 9.5rem;
}

.index .l-header_subMenu_btnRakuten span::before {
  background-image: url(../img/header/btn_rakuten_white.png);
}

.index .l-header_subMenu_btnFaq span {
  width: 7rem;
}

.index .l-header_subMenu_btnFaq span::before {
  background-image: url(../img/header/btn_faq_white.png);
}

.l-header_search {
  position: absolute;
  top: 1rem;
  right: 0;
  width: 24rem;
  z-index: 20;
}

@media only screen and (max-width: 767px) {
  .l-header_search {
    display: none;
  }
}

.l-header_search form {
  position: relative;
}

.l-header_search_input {
  display: block;
  padding: 1rem;
  border: 1px solid #669A5B;
  border-radius: 0.5rem;
  width: calc(100% - 5rem);
  height: 4rem;
  background: #fff;
  font-size: 10px;
  line-height: 1.3;
  color: #669A5B;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
}

.index .l-header_search_input {
  border-color: transparent;
}

.l-header_search_input:-ms-input-placeholder {
  color: #669A5B;
  opacity: 0.5;
}

.l-header_search_input::-ms-input-placeholder {
  color: #669A5B;
  opacity: 0.5;
}

.l-header_search_input::-webkit-input-placeholder {
  color: #669A5B;
  opacity: 0.5;
}

.l-header_search_input::placeholder {
  color: #669A5B;
  opacity: 0.5;
}

.l-header_search_btn {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  border: 0;
  width: 5rem;
  height: 4rem;
  background: transparent url(../img/common/icon_search.png) 50% 50% no-repeat;
  background-size: 3.3rem auto;
  cursor: pointer;
  transition: opacity 0.3s;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  text-indent: 500%;
  white-space: nowrap;
  overflow: hidden;
}

.index .l-header_search_btn {
  background-image: url(../img/common/icon_search_white.png);
}

.l-header_search_btn:hover {
  opacity: 0.7;
}

.l-header_category {
  position: relative;
  background: #fff;
  z-index: 10;
}

@media only screen and (max-width: 767px) {
  .l-header_category {
    padding-top: 4.5rem;
  }
}

.l-header_category_container {
  position: relative;
}

@media print, screen and (min-width: 768px) {
  .l-header_category_container {
    margin: 0 auto;
    width: 118rem;
  }
}

.l-header_category_list {
  display: flex;
  line-height: 0;
  flex-wrap: wrap;
}

@media only screen and (max-width: 767px) {
  .l-header_category_list {
    margin-top: -0.3rem;
  }
}

.l-header_category_list li {
  position: relative;
  width: 16.666%;
}

.l-header_category_list li::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 0.3rem;
  height: 3.5rem;
  background: transparent url(../img/common/border_01.png) 0 0 repeat-y;
  background-size: 0.5rem auto;
  content: "";
  -webkit-transform: translateY(-60%);
          transform: translateY(-60%);
}

@media only screen and (max-width: 767px) {
  .l-header_category_list li {
    margin-top: 0.3rem;
  }
  .l-header_category_list li:nth-child(6n+1)::before {
    display: none;
  }
  .l-header_category_list li::after {
    position: absolute;
    top: -0.3rem;
    left: 50%;
    width: 2.5rem;
    height: 0.3rem;
    background: transparent url(../img/common/border_01.png) 0 0 repeat-x;
    background-size: 0.5rem auto;
    content: "";
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

@media print, screen and (min-width: 768px) {
  .l-header_category_list li {
    width: 8.333%;
  }
  .l-header_category_list li:last-child::after {
    position: absolute;
    top: 50%;
    right: 0;
    width: 0.3rem;
    height: 3.5rem;
    background: transparent url(../img/common/border_01.png) 0 0 repeat-y;
    background-size: 0.5rem auto;
    content: "";
    -webkit-transform: translateY(-60%);
            transform: translateY(-60%);
  }
}

@media only screen and (max-width: 767px) {
  .l-header_category_list .is-row2 a {
    padding-bottom: 0.5rem;
  }
}

.l-header_category_list a {
  display: block;
  padding: 0.8rem 0 1.3rem 0;
  text-align: center;
}

@media print, screen and (min-width: 768px) {
  .l-header_category_list a:hover {
    opacity: 0.7;
  }
}

@media print, screen and (min-width: 768px) {
  .l-header_category_list a {
    padding: 2rem 0;
  }
}

@media only screen and (max-width: 767px) {
  .l-header_category_list img {
    width: 80%;
  }
}

@media print, screen and (min-width: 768px) {
  .l-header_category_list img {
    max-width: 100%;
    height: 8rem;
  }
}

.l-header_mv {
  background: #fff;
}

.l-header_mv_img {
  text-align: center;
}

.l-header_mv_img a {
  display: block;
}

@media print, screen and (min-width: 768px) {
  .l-header_mv_img a:hover {
    opacity: 0.7;
  }
}

.l-header_mv_img img {
  max-width: initial;
  max-width: auto;
  width: 100%;
}

.l-header_mv_img.is-pc_top, .l-header_mv_img.is-pc_under, .l-header_mv_img.is-sp_top, .l-header_mv_img.is-sp_under {
  display: none;
}

@media only screen and (max-width: 767px) {
  .l-header_mv_img.is-sp_under,
  .index .l-header_mv_img.is-sp_top {
    display: block;
  }
  .index .l-header_mv_img.is-sp_under {
    display: none;
  }
}

@media print, screen and (min-width: 768px) {
  .l-header_mv_img.is-pc_under,
  .index .l-header_mv_img.is-pc_top {
    display: block;
  }
  .index .l-header_mv_img.is-pc_under {
    display: none;
  }
  .rms .l-header_mv_img.is-pc_under {
    display: block;
  }
}

@media only screen and (max-width: 767px) {
  .l-header_price {
    background: #A4C79D;
  }
}

@media print, screen and (min-width: 768px) {
  .index .l-header_price {
    background: #A4C79D;
  }
}

.l-header_price_container {
  padding: 1.5rem;
}

@media print, screen and (min-width: 768px) {
  .l-header_price_container {
    margin: 0 auto;
    padding: 1rem;
    width: 118rem;
    background: #A4C79D;
  }
  .index .l-header_price_container {
    padding: 1.5rem 0;
  }
}

.l-header_price_list01 {
  display: flex;
  margin: -0.5rem;
  line-height: 0;
  flex-wrap: wrap;
}

@media print, screen and (min-width: 768px) {
  .l-header_price_list01 {
    margin: -0.5rem;
  }
}

.l-header_price_list01 li {
  margin: 0.5rem;
  width: calc(33.333% - 1rem - 0.1px);
}

@media print, screen and (min-width: 768px) {
  .l-header_price_list01 li {
    width: calc(14.285% - 1rem - 0.1px);
  }
}

.l-header_price_list01 a {
  display: block;
  position: relative;
  padding: 1rem 0;
  border-radius: 0.5rem;
  background: #fff;
  text-align: center;
}

@media print, screen and (min-width: 768px) {
  .l-header_price_list01 a:hover {
    opacity: 0.7;
  }
}

@media print, screen and (min-width: 768px) {
  .l-header_price_list01 a {
    padding: 1.7rem 0;
  }
}

.l-header_price_list01 a::before {
  position: absolute;
  bottom: 0.5rem;
  right: 0.5rem;
  border-left: 1rem solid transparent;
  border-bottom: 1rem solid #FFDD00;
  content: "";
}

@media print, screen and (min-width: 768px) {
  .l-header_price_list01 a::before {
    bottom: 0.7rem;
    right: 0.7rem;
    border-left-width: 1.5rem;
    border-bottom-width: 1.5rem;
  }
}

@media only screen and (max-width: 767px) {
  .l-header_price_list01 img {
    width: 80%;
  }
}

@media print, screen and (min-width: 768px) {
  .l-header_price_list01 img {
    width: 70%;
  }
}

.l-overlay {
  display: none;
}

@media only screen and (max-width: 767px) {
  .is-navOpen {
    position: relative;
    height: 100%;
    overflow-y: hidden;
  }
  .is-navOpen .l-header_mainMenu_contents {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
