@charset "UTF-8";
/*
* 基本定義
*/
.w950 {
  max-width: 950px;
  margin: auto;
  padding-left: 10px;
  padding-right: 10px; }

hr.cont_h_line {
  border: none;
  width: 1px;
  height: 15px;
  margin: 15px auto;
  background: #333333; }

/*
* リセット
*/
@media screen and (min-width: 641px) {
  html,
  body {
    font-size: 16px; } }

@media screen and (max-width: 640px) {
  html,
  body {
    font-size: 15px; } }

figure {
  margin: 0;
  padding: 0; }

.contents {
  padding: 0;
  max-width: 2000px;
  margin: auto;
  overflow: hidden; }
  .contents img {
    backface-visibility: hidden; }

/*
* 共通
*/
.cont_sec_ttl {
  text-align: center; }
  .cont_sec_ttl h3 {
    text-align: center;
    margin: 0;
    position: relative; }
    @media screen and (max-width: 640px) {
      .cont_sec_ttl h3 img {
        transform: scale(0.9); } }
  .cont_sec_ttl p.cont_read {
    text-align: center; }

hr.cont_line {
  width: 150px;
  height: 1px;
  border: none;
  margin: 20px auto;
  background: #434343; }

/*
* header
*/
@media screen and (min-width: 641px) {
  .page_about .cont_gnavi .cont_about a,
  .page_menus .cont_gnavi .cont_menus a,
  .page_staritems .cont_gnavi .cont_staritems a,
  .page_shoplist .cont_gnavi .cont_shoplist a {
    opacity: 1; }
    .page_about .cont_gnavi .cont_about a:after,
    .page_menus .cont_gnavi .cont_menus a:after,
    .page_staritems .cont_gnavi .cont_staritems a:after,
    .page_shoplist .cont_gnavi .cont_shoplist a:after {
      content: "";
      background: #6b6b6b; } }

@media screen and (max-width: 640px) {
  .page_about .cont_gnavi .cont_about,
  .page_menus .cont_gnavi .cont_menus,
  .page_staritems .cont_gnavi .cont_staritems,
  .page_shoplist .cont_gnavi .cont_shoplist {
    background: #fdffe9; } }

@media screen and (min-width: 641px) {
  .page_top header {
    border-bottom: none; } }

@media screen and (min-width: 641px) {
  header {
    border-bottom: 1px solid #dcdcdc; } }

header .cont_gnavi {
  display: flex;
  max-width: 770px; }
  @media screen and (min-width: 641px) {
    header .cont_gnavi {
      align-items: center; } }
  @media screen and (max-width: 640px) {
    header .cont_gnavi {
      border-top: 1px solid #d2d2d2;
      border-bottom: 1px solid #d2d2d2; } }
  header .cont_gnavi > div {
    width: 17%;
    box-sizing: border-box;
    text-align: center; }
    @media screen and (max-width: 640px) {
      header .cont_gnavi > div {
        background: #f6f6f6;
        border-left: 1px solid #d2d2d2; }
        header .cont_gnavi > div:first-child {
          border: none; } }
    header .cont_gnavi > div.cont_logo {
      width: 32%; }
      header .cont_gnavi > div.cont_logo h1 {
        margin: 0; }
        @media screen and (min-width: 641px) {
          header .cont_gnavi > div.cont_logo h1 {
            padding: 20px 0; } }
        @media screen and (max-width: 640px) {
          header .cont_gnavi > div.cont_logo h1 {
            padding: 5px; } }
        header .cont_gnavi > div.cont_logo h1 a {
          padding: 0; }
          header .cont_gnavi > div.cont_logo h1 a img {
            width: 193px;
            max-width: 100%;
            height: auto; }
      @media screen and (max-width: 640px) {
        header .cont_gnavi > div.cont_logo {
          background: #FFF;
          display: flex;
          align-items: center; } }
    @media screen and (min-width: 641px) {
      header .cont_gnavi > div:not(.cont_logo) a {
        opacity: 0.7; }
        header .cont_gnavi > div:not(.cont_logo) a:after {
          content: "";
          display: block;
          width: 80%;
          height: 1px;
          background: #ffffff;
          margin: auto; }
        header .cont_gnavi > div:not(.cont_logo) a:hover {
          opacity: 1; }
          header .cont_gnavi > div:not(.cont_logo) a:hover:after {
            content: "";
            background: #6b6b6b; } }
    header .cont_gnavi > div:not(.cont_logo) a img {
      max-width: 100%;
      height: auto; }

/*
* コンテンツフッター
*/
footer {
  background: #eefaf0; }
  @media screen and (min-width: 641px) {
    footer {
      padding: 80px 0; } }
  @media screen and (max-width: 640px) {
    footer {
      padding: 50px 0 0 0; } }
  footer .cont_inner {
    text-align: center; }
    footer .cont_inner .cont_footer_logo img {
      max-width: 80%; }
    footer .cont_inner ul.cont_footer_navi {
      margin: 30px 0 0 0;
      padding: 0; }
      @media screen and (min-width: 641px) {
        footer .cont_inner ul.cont_footer_navi {
          display: inline-flex; } }
      @media screen and (max-width: 640px) {
        footer .cont_inner ul.cont_footer_navi {
          display: flex;
          flex-wrap: wrap;
          margin-left: -10px;
          margin-right: -10px; } }
      footer .cont_inner ul.cont_footer_navi li {
        list-style-type: none;
        font-size: 0.8rem; }
        @media screen and (min-width: 641px) {
          footer .cont_inner ul.cont_footer_navi li {
            padding: 0 1em;
            border-left: 1px solid #7d7d7d; }
            footer .cont_inner ul.cont_footer_navi li:first-child {
              border: none; } }
        @media screen and (max-width: 640px) {
          footer .cont_inner ul.cont_footer_navi li {
            width: 50%;
            text-align: center;
            padding: 1em;
            border-top: 1px solid #7d7d7d;
            border-left: 1px solid #7d7d7d;
            box-sizing: border-box; }
            footer .cont_inner ul.cont_footer_navi li:nth-child(2n-1) {
              border-left: none; } }
        footer .cont_inner ul.cont_footer_navi li a {
          text-decoration: none;
          color: #333; }

/*
* pagetop
*/
.pagetopbtn {
  position: fixed;
  display: block;
  bottom: 0;
  right: 5%;
  width: 50px;
  height: 47px;
  background: #54ca50 url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2242px%22%20height%3D%2246px%22%3E%3Cpath%20fill-rule%3D%22evenodd%22%20fill%3D%22rgb(255%2C%20255%2C%20255)%22%20d%3D%22M41.863%2C30.817%20L21.368%2C0.914%20L0.879%2C30.817%20L14.662%2C26.044%20L14.662%2C45.899%20L28.075%2C45.899%20L28.075%2C26.044%20L41.863%2C30.817%20Z%22%2F%3E%3C%2Fsvg%3E") no-repeat center;
  border-radius: 5px 5px 0 0;
  background-size: 50%; }

/*
* animation
*/
.cont_anime_bt {
  opacity: 0;
  transform: translate(0, 80px); }

.cont_anime_lr {
  opacity: 0;
  transform: translate(-5%, 0); }

.cont_anime_rl {
  opacity: 0;
  transform: translate(5%, 0); }

.cont_anime.do_anime {
  opacity: 1;
  transform: translate(0, 0); }

.cont_anime01 {
  transition: all 1s ease; }

.cont_anime02 {
  transition: all 1s ease 0.3s; }

.cont_anime03 {
  transition: all 1s ease 0.6s; }
