@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, i, center,
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;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}

q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

/*フォント
---------------------------------------------*/
/*メディアクエリー
---------------------------------------------*/
/*変数
---------------------------------------------*/
/* コンテンツ
---------------------------------------------*/
html {
  font-size: 62.5%;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
}

body {
  font-family: noto-sans-cjk-jp, sans-serif;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  line-height: 1.8;
  font-size: 14px;
  color: #000;
  font-weight: normal;
  -ms-scroll-snap-type: y mandatory;
      scroll-snap-type: y mandatory;
}

img {
  width: 100%;
  vertical-align: bottom;
  display: block;
}

a {
  color: #000;
  text-decoration: none;
}

#wrapper {
  width: 100%;
  overflow: hidden;
  opacity: 1;
}

#wrapper.loaded {
  opacity: 1;
  -webkit-transition: 2s 1s;
  transition: 2s 1s;
}

#main_area {
  margin-bottom: 20px;
}

@media screen and (min-width: 1000px) {
  #main_area {
    margin-bottom: 60px;
  }
}

#main_area .main_image {
  width: 100%;
  margin-bottom: 50px;
}

@media screen and (min-width: 1000px) {
  #main_area .main_image {
    max-width: 1060px;
    margin: 100px auto;
  }
}

.title-border {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 22px;
}

@media screen and (min-width: 1000px) {
  .title-border {
    font-size: 24px;
    width: 1060px;
    margin: 0 auto;
  }
}

.title-border:before,
.title-border:after {
  border-top: 1px solid;
  content: "";
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

.title-border:before {
  margin-right: 1rem;
}

.title-border:after {
  margin-left: 1rem;
}

#content {
  margin-top: 50px;
  margin-bottom: 50px;
}

@media screen and (min-width: 1000px) {
  #content {
    margin-top: 100px;
    margin-bottom: 100px;
  }
}

#content img {
  width: 100%;
}

#content ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  max-width: 1060px;
  margin: auto;
}

@media screen and (max-width: 999px) {
  #content ul {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 86.6%;
  }
}

@media screen and (min-width: 1000px) {
  #content ul li {
    padding: 0 5px;
    width: calc(96% / 4);
  }
  #content ul li:nth-child(n+5) {
    margin-top: 60px;
  }
}

@media screen and (max-width: 999px) {
  #content ul li {
    width: calc(100% / 2.1);
  }
  #content ul li:nth-child(n+3) {
    margin-top: 45px;
  }
}

#content ul li a div.img {
  width: 100%;
}

#content ul li a p {
  text-align: center;
}

#content ul li a p.brand {
  margin-top: 10px;
  font-size: 12px;
  line-height: 1.4;
}

@media screen and (min-width: 1000px) {
  #content ul li a p.brand {
    font-size: 13px;
  }
}

#content ul li a p.name {
  margin-top: 10px;
  font-size: 12px;
  line-height: 1.6;
}

@media screen and (min-width: 1000px) {
  #content ul li a p.name {
    font-size: 13px;
  }
}

#content ul li a p.price {
  margin-top: 10px;
  font-size: 13px;
}

@media screen and (min-width: 1000px) {
  #content ul li a p.price {
    font-size: 14px;
  }
}

#content ul li a div.buy {
  text-align: center;
  color: white;
  background: black;
  width: 75px;
  margin: 10px auto 0;
  padding: 2px 0;
  font-size: 13px;
}

@media screen and (min-width: 1000px) {
  #content ul li a div.buy {
    width: 100px;
    font-size: 14px;
    padding: 4px 0;
  }
}

#content ul li a div.buy:hover {
  color: black;
}

#content ul.koya a:hover div.buy {
  background: #00c4f8;
}

#content ul.rj a:hover div.buy {
  background: #ffab32;
}

#content ul.shooky a:hover div.buy {
  background: #2bd2ca;
}

#content ul.mang a:hover div.buy {
  background: #c1a0cf;
}

#content ul.chimmy a:hover div.buy {
  background: #ffcf00;
}

#content ul.tata a:hover div.buy {
  background: #e45354;
}

#content ul.cooky a:hover div.buy {
  background: #ff6fad;
}

#content ul.bt21 a:hover div.buy {
  background: #5475c2;
}

.navToggle {
  position: fixed;
  top: 50px;
  right: 25px;
  width: 50px;
  height: 50px;
  background-color: #fff;
  border: 1px solid #000;
  border-radius: 50%;
  z-index: 500;
  overflow: hidden;
}

@media screen and (min-width: 1000px) {
  .navToggle {
    width: 70px;
    height: 70px;
    top: 80px;
    right: 40px;
  }
}

.navToggle:hover {
  cursor: pointer;
}

.navToggle span {
  display: block;
  width: 20px;
  height: 1px;
  background-color: #000;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: .4s;
  transition: .4s;
}

@media screen and (min-width: 1000px) {
  .navToggle span {
    width: 30px;
  }
}

.navToggle span:nth-of-type(1) {
  top: 35%;
  -webkit-transform: translate(-50%, -35%);
          transform: translate(-50%, -35%);
}

.navToggle span:nth-of-type(3) {
  top: 65%;
  -webkit-transform: translate(-50%, -65%);
          transform: translate(-50%, -65%);
}

.navToggle.active span:nth-of-type(1) {
  top: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(135deg);
          transform: translate(-50%, -50%) rotate(135deg);
}

.navToggle.active span:nth-of-type(2) {
  -webkit-transform: translateX(150%);
          transform: translateX(150%);
}

.navToggle.active span:nth-of-type(3) {
  top: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(-135deg);
          transform: translate(-50%, -50%) rotate(-135deg);
}

.nav {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: .8s;
  transition: .8s;
  z-index: 400;
  overflow: scroll;
}

.nav.active {
  opacity: 1;
  visibility: visible;
}

.nav .wrap {
  width: 86.6%;
  margin: 0 auto;
  padding: 50px 0;
}

@media screen and (min-width: 1000px) {
  .nav .wrap {
    max-width: 1060px;
    margin: 0 auto;
    padding: 100px 0;
  }
}

.nav .wrap h4 {
  width: 60%;
  margin: 0 auto 30px;
}

@media screen and (min-width: 1000px) {
  .nav .wrap h4 {
    max-width: 320px;
    margin: 0 auto 50px;
  }
}

.nav .wrap ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

@media screen and (min-width: 1000px) {
  .nav .wrap ul {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    max-width: 1080px;
    margin: 0 auto;
  }
}

@media screen and (max-width: 999px) {
  .nav .wrap ul li {
    width: calc(40% - 12px);
  }
}

@media screen and (min-width: 1000px) {
  .nav .wrap ul li {
    width: calc(25% - 20px);
    padding: 10px;
  }
  .nav .wrap ul li:nth-of-type(-n+4) {
    margin-bottom: 30px;
  }
}

.nav .wrap ul li a {
  display: block;
}

.nav .wrap ul li a:hover {
  opacity: 0.5;
}

@media screen and (min-width: 1000px) {
  .nav .wrap ul li a div {
    margin-bottom: 20px;
  }
}

.nav .wrap ul li a p {
  text-align: left;
  font-family: 'noto-sans-cjk-jp';
  font-size: 15px;
  letter-spacing: 0.025em;
  line-height: 1.4;
  text-align: center;
}

@media screen and (min-width: 1000px) {
  .nav .wrap ul li a p {
    line-height: 0;
    font-size: 25px;
  }
}

@media screen and (min-width: 1000px) {
  .nav .wrap ul li img {
    width: 60%;
    margin: 0 auto;
  }
}

.nav .wrap .top {
  text-align: center;
  font-family: 'noto-sans-cjk-jp';
  margin-top: 40px;
}

@media screen and (min-width: 1000px) {
  .nav .wrap .top {
    margin-top: 60px;
  }
}

.nav .wrap .top a {
  text-decoration: none;
  font-size: 14px;
  display: block;
  width: 250px;
  margin: 0 auto 60px;
  padding: 4px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid #000;
  letter-spacing: 0.05em;
  text-align: center;
}

@media screen and (min-width: 1000px) {
  .nav .wrap .top a {
    font-size: 25px;
    width: 280px;
    padding: 4px 0;
    margin: 0 auto 120px;
  }
}

#page-top {
  position: fixed;
  bottom: 15px;
  right: 15px;
  z-index: 999;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 60px;
  height: 60px;
  background-color: rgba(166, 164, 164, 0.5);
}

@media screen and (max-width: 999px) {
  #page-top {
    right: 0;
    bottom: 0;
    width: 40px;
    height: 40px;
  }
}

.cover_anim:before {
  -webkit-animation: cover_T 1.6s cubic-bezier(0.4, 0, 0.2, 1) forwards;
          animation: cover_T 1.6s cubic-bezier(0.4, 0, 0.2, 1) forwards;
  background: #f8ced2;
  width: 120%;
  bottom: 0;
  content: '';
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
}

.cover_anim01:before {
  -webkit-animation: cover_L 1.6s cubic-bezier(0.4, 0, 0.2, 1) forwards;
          animation: cover_L 1.6s cubic-bezier(0.4, 0, 0.2, 1) forwards;
  background: #fff;
  bottom: 0;
  content: '';
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
}

.bg_color::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: white;
  z-index: 100;
  -webkit-animation: shrink 1.2s ease-in-out 0s 1 forwards;
          animation: shrink 1.2s ease-in-out 0s 1 forwards;
}

.opacity {
  -webkit-animation: opacity 1.6s ease-in-out 1 both;
          animation: opacity 1.6s ease-in-out 1 both;
}

/*.rotate {
  animation: rotate 1.6s ease-in-out .6s 1 forwards;
}*/
.opacity01 {
  opacity: 1 !important;
}

.logo_small {
  opacity: 0;
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
}

.logo_small.translate {
  opacity: 1 !important;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition: all 2s;
  transition: all 2s;
}

h1.translate01 {
  opacity: 1 !important;
  -webkit-transform: translate(-50%, -50%) !important;
          transform: translate(-50%, -50%) !important;
  -webkit-transition: all 1s 1s;
  transition: all 1s 1s;
}

h3.translate02 {
  opacity: 1 !important;
  -webkit-transform: translate(-90%, -95%) !important;
          transform: translate(-90%, -95%) !important;
  -webkit-transition: all 1s 1.6s;
  transition: all 1s 1.6s;
}

.rotate {
  opacity: 0;
  -webkit-transform: translate3d(0%, -35%, 0) rotate3d(1, 1, 0, -30deg);
          transform: translate3d(0%, -35%, 0) rotate3d(1, 1, 0, -30deg);
  -webkit-transition: -webkit-transform 1.4s;
  transition: -webkit-transform 1.4s;
  transition: transform 1.4s;
  transition: transform 1.4s, -webkit-transform 1.4s;
}

.rotate.in {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0) rotate3d(1, 1, 0, 0deg);
          transform: translate3d(0, 0, 0) rotate3d(1, 1, 0, 0deg);
}

.filter {
  filter: blur(10px) brightness(2) saturate(1);
  -webkit-filter: blur(10px) brightness(2) saturate(1);
  -moz-filter: blur(10px) brightness(2) saturate(1);
  -webkit-transition: -webkit-filter 0.6s cubic-bezier(0.1, 0, 0.2, 1);
  transition: -webkit-filter 0.6s cubic-bezier(0.1, 0, 0.2, 1);
  transition: filter 0.6s cubic-bezier(0.1, 0, 0.2, 1);
  transition: filter 0.6s cubic-bezier(0.1, 0, 0.2, 1), -webkit-filter 0.6s cubic-bezier(0.1, 0, 0.2, 1);
}

.filter.off {
  filter: blur(0) brightness(1) saturate(1);
  -webkit-filter: blur(0) brightness(1) saturate(1);
  -moz-filter: blur(0) brightness(1) saturate(1);
}

.scale {
  opacity: 1 !important;
  -webkit-transform: scale(1) !important;
          transform: scale(1) !important;
  -webkit-transition: all 2s ease-in-out;
  transition: all 2s ease-in-out;
}

@media screen and (max-width: 999px) {
  .sp_none {
    display: none !important;
  }
}

@media screen and (min-width: 1000px) {
  .pc_none {
    display: none !important;
  }
}

div[class*="section"] {
  margin-bottom: 20px !important;
}

@media screen and (min-width: 1000px) {
  div[class*="section"] {
    margin-bottom: 40px !important;
  }
}

/*div[class*="section"]:not(:last-of-type) {
  @include mq(sp) {
    margin-bottom: 100px;
  }
  @include mq(pc) {
    margin-bottom: 100px;
  }
}*/
/*div[class*="section"]:nth-last-child(2) {
  @include mq(sp) {
    margin-bottom: 0;
  }
}*/
/*テキストアニメーション
_______________________________________*/
/* loading
--------------------------------------*/
#loader-bg {
  position: fixed;
  width: 100%;
  height: 100vh;
  top: 0px;
  left: 0px;
  background: #FFF;
  z-index: 1;
  z-index: 99999;
}

#loader-bg #loading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (min-width: 1000px) {
  #loader-bg #loading {
    width: 100%;
    margin: auto;
    height: 100%;
  }
}

@media screen and (max-width: 999px) {
  #loader-bg #loading {
    width: 100%;
    margin: auto;
    height: 100%;
  }
}

@media screen and (min-width: 1000px) {
  #loader-bg #loading div {
    width: 20%;
    margin: auto;
  }
}

@media screen and (max-width: 999px) {
  #loader-bg #loading div {
    width: 40%;
    margin: auto;
  }
}

/*jQueryのCSS
--------------------------------------*/
#footer {
  background: #f6f6f6;
  padding: 50px 0;
}

@media screen and (min-width: 1000px) {
  #footer {
    width: 100%;
    margin: 0 auto;
    padding: 100px 0;
  }
}

@media screen and (min-width: 1000px) {
  #footer .wrap {
    /*width: 38%;
        max-width: 1280px;
        margin: 0 auto;*/
  }
}

#footer .wrap p {
  font-size: 14px;
  text-align: center;
  font-family: a-otf-futo-go-b101-pr6n, sans-serif;
  font-weight: 500;
  letter-spacing: 1px;
  text-indent: 1px;
}

#footer .wrap h4 {
  width: 46%;
  margin: 0 auto 25px;
  max-width: 200px;
}

@media screen and (min-width: 1000px) {
  #footer .wrap h4 {
    width: 14.8%;
    margin: 0 auto 40px;
  }
}

#footer .wrap a {
  display: block;
}

#footer .wrap a.casualTop {
  display: block;
  width: 180px;
  margin: 0 auto 60px;
  padding: 10px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid #444;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  text-align: center;
}

@media screen and (min-width: 1000px) {
  #footer .wrap a.casualTop {
    font-size: 1.6rem;
    width: 240px;
    padding: 14px 0;
    margin: 0 auto 120px;
  }
}

#footer .wrap a.casualTop:hover {
  opacity: 0.5;
}

#footer .wrap a.insta {
  width: 10%;
  max-width: 20px;
  margin: 0 auto 20px;
}

@media screen and (min-width: 1000px) {
  #footer .wrap a.insta {
    max-width: 24px;
    margin: 0 auto 40px;
  }
}

#footer .wrap a.insta:hover {
  opacity: 0.5;
}

@media screen and (min-width: 1000px) {
  #footer .wrap p {
    font-size: 14px;
    text-align: center;
    font-family: a-otf-futo-go-b101-pr6n, sans-serif;
    font-weight: 500;
    letter-spacing: 1px;
    text-indent: 1px;
  }
}

#footer .wrap p small {
  font-size: 10px;
  font-weight: normal;
}
/*# sourceMappingURL=style.css.map */