@charset "UTF-8";
/* CSS Document */

/*-----------------
common
-----------------*/
*{margin:0;padding:0;box-sizing:border-box;border:0}
html{font-size:62.5%;}
body{line-height: 1.5;font-size:14px;font-size:1.4rem;font-family: 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;}
a{color: #0c4fab;text-decoration: none;transition: all .1s ease-out;}
a:hover{opacity:0.7;}
img{vertical-align:middle;max-width:100%;height:auto;}
ul,ol,li{list-style:none;}

/*-----------------
header
-----------------*/
#header_summary {
  max-width: calc(980px + 56px);
  margin: 0 auto;
  padding: 0.5em 28px;
  font-size: 25px;
  font-size: 2.5rem;
}
#header_image {
  text-align: center;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  background-color: #EB6647;
  padding: 4em 2em;
}
#header_image img {
  margin: 0 0 -10vw;
  position: relative;
  z-index: 1;
}

/*-----------------
nav
-----------------*/
nav {
  padding: 0 0 1em;
  margin: 0 auto;
}
nav ul {
  font-size: 0;
  text-align: center;
  max-width: 980px;
  margin: 0 auto;
}
nav ul li {
  display: inline-block;
  margin: 0 5px 5px 0;
  width: 24%;
}
nav a {
  background-color: #0c4fab;
  color: #fff;
  display: block;
  text-align: center;
  white-space: nowrap;
  border-radius: 3px;
  font-size: 16px;
  font-size: 1.6rem;
  padding: 15px 10px;
}
nav a:hover {
  opacity: 1;
  background-color: #5885c5;
}

/*-----------------
blog
-----------------*/
article {
  margin: 0 auto;
  text-align: center;
}
section {
  max-width: calc(980px + 4em);
  margin: 3em auto 0;
  text-align: center;
  padding: 0 2em;
}
.contents {
  margin: 0 auto;
  text-align: left;
}
.shop_link {
  padding: 4em 2em;
  text-align: center;
}
.shop_link h3 {
  font-size: 24px;
  font-size: 2.4rem;
}
.shop_link ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 980px;
  margin: 2em auto 0;
}
.shop_link li {
  width: 32%;
  margin: 0 0 1em;
}
.shop_link li a {
  width: 100%;
  height: 100%;
  padding: 1em;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  background-color: #0c4fab;
  color: #fff;
  min-height: 130px;
}
.shop_link  li:nth-child(3n+2):last-child {
  margin-left: auto;
  margin-right: 34%;
}
.shop_link li strong {
  font-size: 18px;
  font-size: 1.8rem;
  width: 100%;
}
.shop_link li address {
  font-style: normal;
  font-size: 12px;
  font-size: 1.2rem;
  width: 100%;
}
.shop_link li p {
  font-size: 12px;
  font-size: 1.2rem;
}
.lp-1 {
  padding: 8vw 2em 0;
}
.lp-3 {
  margin: 4em 0 0;
  padding: 4em 2em;
  background-color: #E3EBD1;
}
.lp-4 {
  padding: 4em 2em;
}
.lp-5 {
  padding: 4em 2em;
  background-color: #E8DED4;
}
.lp-6 {
  padding: 4em 2em;
}
.lp-7 {
  padding: 4em 2em;
  background-color: #E0D9C1;
}
.lp-8 {
  padding: 4em 2em;
}
.lp-9 {
  padding: 4em 2em;
  background-color: #C0DFF0;
}
.lp-10 {
  padding: 4em 2em;
}
.lp-11 {
  padding: 4em 2em;
  background-color: #E3EBD1;
}
.lp-12 {
  background-color: #e50012;
}
.lp-13 {
  padding: 4em 2em;
}
.lp-14 {
  background-color: #242e9d;
  padding: 0 2em 5em;
}
.lp-18 {
  background-color: #F2BD1B;
  padding: 0 2em 5em;
}
.btn_side a {
  position: fixed;
  right: 0;
  z-index: 10;
  display: block;
  bottom: 40px;
  background-color: #002580;
  color: #fff;
  font-size: 20px;
  font-size: 2.0rem;
  width: 1em;
  padding: 2em 2em 2em 1em;
  border-radius: 10px 0 0 10px;
  text-align: center;
}
.hatsuuri {
  padding: 43vw 2em 0;
  background-image: url(images/hatsuuri_kv2.jpg);
  background-position: top center;
  background-repeat: no-repeat;
  text-align: center;
  background-size: contain;
}
.hatsuuri .box {
  max-width: calc(980px + 4em);
  margin: 3em auto;
  padding: 4em 2em;
  background-color: #fcde9e;
}

/*-----------------
footer_menu
-----------------*/
.footer_menu a {
  background: #e50012;
  padding: 10px 30px;
  margin: 3em auto 10px;
  display: block;
  text-align: center;
  border-radius: 3px;
  color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  max-width: 450px;
}
.footer_menu p {
  margin: 0 auto;
  font-size: 12px;
  font-size: 1.2rem;
  padding: 0 14px;
  text-align: center;
}

/*-----------------
footer
-----------------*/
footer {
  margin: 30px 0 0;
  background: #ededed;
  text-align: center;
  padding: 14px;
  color: #000;
  font-size: 10px;
  font-size: 1.0rem;
}

@media screen and (max-width: 640px) {
  #header_summary {
    font-size: 4vw;
  }
  nav {
    display: none;
  }
  .contents {
    padding: 0 1em;
  }
  section {
    padding: 0;
  }
  article h2,
  section h2 {
    font-size: 16px;
    font-size: 1.6rem;
  }
  .footer_menu  p {
    text-align: left;
  }
  footer {
    text-align: left;
    margin: 30px 0 55px;
  }
  #sub_shop li:nth-child(3n+2):last-child {
    margin: 10px 0 0;
  }
  .shop_link li {
    width: 49%;
  }
  .shop_link li strong br {
    display: none;
  }
  .shop_link li strong {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .shop_link li a {
    justify-content: left;
    text-align: left;
  }
  .shop_link li:nth-child(3n+2):last-child {
    margin: 0 0 1em;
  }
  .btn_side a {
    bottom: 0;
    background-color: #002580;
    font-size: 16px;
    font-size: 1.6rem;
    width: 100%;
    padding: 1em;
    border-radius: 0;
  }
}