@charset "UTF-8";

/*! sanitize.css v8.0.0 | CC0 License | github.com/csstools/sanitize.css */

*, :before, :after {
  background-repeat: no-repeat;
  box-sizing: border-box
}

:before, :after {
  text-decoration: inherit;
  vertical-align: inherit
}

html {
  cursor: default;
  line-height: 1.15;
  -moz-tab-size: 4;
  -o-tab-size: 4;
     tab-size: 4;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  word-break: break-word;
}

body {
  margin: 0;
}

h1 {
  font-size: 2em;
  margin: .67em 0
}

hr {
  height: 0;
  overflow: visible
}

main {
  display: block
}

nav ol, nav ul {
  list-style: none
}

pre {
  font-size: 1em
}

a {
  background-color: transparent
}

abbr[title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted
}

b, strong {
  font-weight: bolder
}

code, kbd, samp {
  font-size: 1em
}

small {
  font-size: 80%
}

audio, canvas, iframe, img, svg, video {
  vertical-align: middle
}

audio, video {
  display: inline-block
}

audio:not([controls]) {
  display: none;
  height: 0
}

img {
  border-style: none
}

svg:not([fill]) {
  fill: currentColor
}

svg:not(:root) {
  overflow: hidden
}

table {
  border-collapse: collapse
}

button, input, select, textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit
}

button, input, select {
  margin: 0
}

button {
  overflow: visible;
  text-transform: none
}

button, [type=button], [type=reset], [type=submit] {
  -webkit-appearance: button
}

fieldset {
  padding: .35em .75em .625em
}

input {
  overflow: visible
}

legend {
  color: inherit;
  display: table;
  max-width: 100%;
  white-space: normal
}

progress {
  display: inline-block;
  vertical-align: baseline
}

select {
  text-transform: none
}

textarea {
  margin: 0;
  overflow: auto;
  resize: vertical
}

[type=checkbox], [type=radio] {
  padding: 0
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px
}

::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
  height: auto
}

::-webkit-input-placeholder {
  color: inherit;
  opacity: .54
}

::-webkit-search-decoration {
  -webkit-appearance: none
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit
}

::-moz-focus-inner {
  border-style: none;
  padding: 0
}

:-moz-focusring {
  outline: 1px dotted ButtonText
}

:-moz-ui-invalid {
  box-shadow: none
}

details {
  display: block
}

dialog {
  background-color: white;
  border: solid;
  color: black;
  display: block;
  height: -moz-fit-content;
  height: -webkit-fit-content;
  height: fit-content;
  left: 0;
  margin: auto;
  padding: 1em;
  position: absolute;
  right: 0;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content
}

dialog:not([open]) {
  display: none
}

summary {
  display: list-item
}

canvas {
  display: inline-block
}

template {
  display: none
}

a, area, button, input, label, select, summary, textarea, [tabindex] {
  touch-action: manipulation
}

[hidden] {
  display: none
}

[aria-busy=true] {
  cursor: progress
}

[aria-controls] {
  cursor: pointer
}

[aria-disabled=true], [disabled] {
  cursor: not-allowed
}

[aria-hidden=false][hidden]:not(:focus) {
  clip: rect(0, 0, 0, 0);
  display: inherit;
  position: absolute
}

html {
  font-size: 62.5%;
  font-family: 'Shuei MaruGo B',sans-serif;
  width: 100%;
  animation: fadeIn 2s ease 0s 1 normal;
  -webkit-animation: fadeIn 2s ease 0s 1 normal;
}

body {
  position: relative;
  width: 100%;
  overflow-x: hidden;
  font-size: 1.6rem;
}
body::before {
    background:url(../img/bg.jpg) no-repeat top center;
    background-size: cover;
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    z-index: -1;
}
body#yukoyamamoto::before {
  background:url(../img/bg2.jpg) no-repeat top center;
  background-size: cover;
}
body#mambo::before {
  background:url(../img/bg3.jpg) no-repeat top center;
  background-size: cover;
}
body#hobonichi.bg1::before {
  background:url(../img/hobonichi/bg_1.jpg) no-repeat center center;
  background-size: cover;
}
html, body {
  min-width: 100%;
  height: 100%
}

h1, h2, h3, h4, h5, h6, div, span, p, ul, ol, li, dd, small, a {
  margin: 0;
  padding: 0;
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: .1em;
  list-style-type: none;
  word-break: normal;
  position: relative;
  font-weight: 400;
  z-index: 2
}

a{
  text-decoration: none;
}

a:hover {
  opacity: .7;
}
a:hover .btn{
  opacity: .7;
}
h1, h2, h3, h4, h5, h6 {
  font-weight: 400
}

.spOnly{
    display: none;
}
.hide{
  opacity: 0;
}
.bg {
  background-size: cover;
  background-position: top center;
  position: relative;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
}
.bg-bk {
  background-color: rgba(0,0,0,.7);
}
.top {
  z-index: 10;
}
.bg-1-haramaki {
  position: absolute;
  /* top: 35px; */
  top: 4.375vh;
  left: 50%;
  transform: translateX(-50%);
  -webkit-animation: fadeIn 2s ease 0s 1 normal;
          animation: fadeIn 2s ease 0s 1 normal;
}

.bg .logo {
  position: absolute;
  right: 3.33%;
  bottom: 4.2vh;
  -webkit-animation: fadeIn 2s ease 0s 1 normal;
          animation: fadeIn 2s ease 0s 1 normal;
}

.bg .btn_down {
  position: absolute;
  bottom: 25px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-animation: fadeIn 2s ease 0s 1 normal;
          animation: fadeIn 2s ease 0s 1 normal;
}
@-webkit-keyframes fadeIn {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
}

@keyframes fadeIn {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
}

.fade {
  opacity: 0;
  transition: all .5s ease-out
}

.fade2 {
  transition: all 1.2s ease-out .8s;
}

.fade.active {
  opacity: 1
}

#yodogawa {
  padding: 100px 0 90px;
}

#yodogawa .txt {
  color: #fff;
  max-width: 390px;
  width: 86.6%;
  margin: 0 auto;
  padding-bottom: 50px;
  text-align: left;
  transform: initial;
  left: 0;
  top: 0;
  position: relative;
}

.info {
  padding: 0 0 59px;
  background-color: rgba(0, 0, 0, .75);
  text-align: center;
}

.info__ttl {
  margin-bottom: 60px;
  background-color: #000;
  line-height: 56px;
  height: 60px;
}

.txt {
  width: 95%;
  max-width: 600px;
  text-align: center;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.banner a {
  max-width: 433px;
  width: 86.6%;
  margin: 0 auto;
  display: block;
  margin-bottom: 25px;
  color: #fff;
}
.banner a p {
  font-size: 1.4rem;
  padding-top: .5em;
  letter-spacing: .05em;
}
.product .banner {
  background-color: rgba(0,0,0,.7);
}
.product .banner h2 {
  font-family: 'Midashi Go MB1',sans-serif;
  text-align: center;
  color: #fff;
  letter-spacing: .05em;
  padding: 75px 0 55px;
}
.products {
  position: absolute;
  text-align: center;
}
.products a {
  color: #000;
}
.products .name {
  line-height: 1;
}
.btn{
  font-family: 'A1 Gothic L',sans-serif;
  font-size: 1.4rem;
  line-height: 1;
  font-feature-settings: "palt";
  border-radius: 17px;
  border: 1px solid;
  padding: .6em 1.3em;
  margin-top: 15px;
  display: inline-block;
  vertical-align: middle;
  background-color: #fff;
  letter-spacing: 0;
}
.products__item a {
  display: block;
  text-align: center
}

.products__item a img {
  width: 100%;
  display: block;
  margin: 0 auto 20px
}
#hobonichi .bg-1-haramaki {
  top: 50%;
  transform: translate(-50%, -50%);
}
#hobonichi .bg-1 .products{
  top: 10vh;
  right: 11.2%;
}
#hobonichi .bg-2 {
  background-image: url(../img/hobonichi/bg_2.jpg)
}
#hobonichi .bg-2 .products{
  top: 49.8vh;
  left: 27.5%;
}
#hobonichi .bg-3 {
  background-image: url(../img/hobonichi/bg_3.jpg)
}
#hobonichi .bg-3 .products{
  top: 50vh;
  padding-top: 5.9vh;
  right: 4.88%;
}
#hobonichi .bg-4 {
  background-image: url(../img/hobonichi/bg_4.jpg)
}
#hobonichi .bg-4 .products{
  top: 50vh;
  padding-top: .7vh;
  right: 22.5%;
}
#hobonichi .bg-5 {
  background-image: url(../img/hobonichi/bg_5.jpg)
}
#hobonichi .bg-5 .products{
  top: 36.4vh;
  left: 41.7%;
}

#yukoyamamoto .bg-1-haramaki {
  top: 50%;
  transform: translate(-50%, -50%);
}
#yukoyamamoto .bg-1 {
  background-image: url(../img/yukoyamamoto/bg_1.jpg);
  background-position: bottom center;
}
#yukoyamamoto .bg-1 .products{
  top: 50vh;
  padding-top: 12.5vh;
  left: 13.33%;
}
#yukoyamamoto .bg-2 {
  background-image: url(../img/yukoyamamoto/bg_2.jpg)
}
#yukoyamamoto .bg-2 .products{
  top: 35.37vh;
  left: 10.16%;
}
#yukoyamamoto .bg-3 {
  background-image: url(../img/yukoyamamoto/bg_3.jpg)
}
#yukoyamamoto .bg-3 .products{
  top: 12.5vh;
  left: 13.33%;
}
#yukoyamamoto .bg-4 {
  background-image: url(../img/yukoyamamoto/bg_4.jpg)
}
#yukoyamamoto .bg-4 .products{
  top: 44.6vh;
  left: 44.6%;
}
#yukoyamamoto .bg-5 {
  background-image: url(../img/yukoyamamoto/bg_5.jpg)
}
#yukoyamamoto .bg-5 .products{
  top: 12.5vh;
  right: 28.33%;
}
#yukoyamamoto .bg-6 {
  background-image: url(../img/yukoyamamoto/bg_6.jpg)
}
#yukoyamamoto .bg-6 .products{
  top: 7.8vh;
  left: 21%;
}

#mambo .bg-0 {
  background-image: url(../img/mambo/bg_0.jpg)
}
#mambo .bg-1-haramaki {
  top: 50%;
  transform: translate(-50%, -50%);
}
#mambo .bg-1 {
  background-image: url(../img/mambo/bg_1.jpg)
}
#mambo .bg-1 .products{
  top: 21.25vh;
  left: 14.33%;
}
#mambo .bg-2 {
  background-image: url(../img/mambo/bg_2.jpg)
}
#mambo .bg-2 .products{
  top: 10vh;
  left: 50%;
  transform: translateX(-50%);
}
#mambo .bg-3 {
  background-image: url(../img/mambo/bg_3.jpg)
}
#mambo .bg-3 .products{
  top: 50%;
  left: 4.25%;
  transform: translateY(-50%);
}
#mambo .bg-4 {
  background-image: url(../img/mambo/bg_4.jpg)
}
#mambo .bg-4 .products{
  top: 50%;
  left: 46.83%;
  transform: translateY(-50%);
}
#mambo .bg-5 {
  background-image: url(../img/mambo/bg_5.jpg)
}
#mambo .bg-5 .products{
  top: 48.375vh;
  left: 35.58%;
}
footer {
  background-color: #fff;
  padding: 20px 0 35px
}

footer .share__ttl {
    text-align: center;
    margin-bottom: 22px;
}

footer .share {
  width: 95%;
  max-width: 250px;
  margin: 0 auto 27px;
  display: flex;
  justify-content: space-between
}

footer .footer__btn{
    border-top: 1px solid;
    text-align: center;
    padding-top: 30px;
}

footer .footer__btn div{
    margin-bottom: 29px;
}

footer .footer__links-store {
  display: flex;
  justify-content: center;
  margin-bottom: 23px
}

footer .footer__links-store a {
  text-decoration: none;
  font-size: 1.2rem;
  font-family: '小塚ゴシック Pro','Kozuka Gothic Pro',sans-serif;
  color: #000
}

footer .footer__links-store a:after {
  content: "／";
  display: inline;
  font-size: 1.3rem
}

footer .footer__links-store li:last-child a:after {
  content: none
}

footer small {
  display: block;
  text-align: center
}
@media (min-width: 769px){
  .bg {
    min-height: 700px;
  }
}
@media(max-width:768px) {
  body::before {
    background:url(../img/bg_sp.jpg) no-repeat top center;
    background-size: cover;
    font-size: 1.4rem;
  }
  body#yukoyamamoto::before{
    background:url(../img/bg2_sp.jpg) no-repeat top center;
    background-size: cover;
  }  
  body#mambo::before {
    background:url(../img/bg3_sp.jpg) no-repeat top center;
    background-size: cover;
  }  
  img {
    width: 100%;
  }
  .pcOnly{
      display: none;
  }
  .spOnly{
      display: block;
  }
  .bg {
    background-size: cover;
    background-position: center center;
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
    height: 100vh;
    height: calc(var(--vh, 1vh) * 100);
  }
  .bg-1-haramaki {
    top: 50%;
    width: 88vw;
    transform: translate(-50%, -50%);
    max-height: 83vh;
  }
  .top .bg-1-haramaki {
    display: none;
  }
  .top {
    background-image: url(../img/main_ttl2_sp.png);
    background-size: contain;
  }
  .bg .btn_down {
    width: 30px;
    bottom: 3.3vw;
  }
  .bg .logo {
    right: 4vw;
    bottom: 0.66vh;
    width: 40vw;
  }
  #yodogawa {
    padding: 40px 0 30px;
  }
  .txt {
    width: 93.333%;
  }
  .txt.staff{
    width: 66%;
  }
  .banner a p {
    font-size: 1rem;
  }
  .fade.active {
    opacity: 1;
  }
  .fade {
    opacity: 0;
    transition: all .5s ease-out;
  }
  .fade2 {
    transition: all 1s ease-out .5s;
  }
  body#hobonichi.bg1::before {
    background: url(../img/hobonichi/bg_1_sp.jpg) no-repeat top center;
    background-size: cover;
  }
  #hobonichi .bg-1-haramaki {
    width: 74.66%;
  }
  #hobonichi .bg-1 .products{
    top: 6.14vh;
    right: 4%;
  }
  #hobonichi .bg-1 .products .name{
    width: 29.79vw;
    margin: 0 auto;
  }
  #hobonichi .bg-2 {
    background-image: url(../img/hobonichi/bg_2_sp.jpg)
  }
  #hobonichi .bg-2 .products{
    top: 27.4vh;
    left: auto;
    right: 8.1%;
  }
  #hobonichi .bg-2 .products .name{
    width: 18.58vw;
    margin: 0 auto;
  }
  #hobonichi .bg-3 {
    background-image: url(../img/hobonichi/bg_3_sp.jpg)
  }
  #hobonichi .bg-3 .products .name{
    width: 36.4vw;
    margin: 0 auto;
  }
  #hobonichi .bg-3 .products{
    top: 5.6vh;
    padding-top: 0;
    left: 8.57%;
    right: auto;
  }
  #hobonichi .bg-4 {
    background-image: url(../img/hobonichi/bg_4_sp.jpg)
  }
  #hobonichi .bg-4 .products .name{
    width: 36.4vw;
    margin: 0 auto;    
  }
  #hobonichi .bg-4 .products{
    top: 5.97vh;
    left: 8.57%;
    padding-top: 0;
    right: auto;
  }
  #hobonichi .bg-5 {
    background-image: url(../img/hobonichi/bg_5_sp.jpg)
  }
  #hobonichi .bg-5 .products .name{
    width: 28.22vw;
    margin: 0 auto;    
  }
  #hobonichi .bg-5 .products{
    top: 40vh;
    padding-top: 17.93vh;
    left: 6.4%;
  }

  #yukoyamamoto .bg-1-haramaki {
    width: 80%;
    top: 27.73vh;
    transform: translate(-50%, 0);
  }
  #yukoyamamoto .bg-1 {
    background-image: url(../img/yukoyamamoto/bg_1_sp.jpg)
  }
  #yukoyamamoto .bg-1 .products{
    top: 16.5vh;
    padding-top: 0;
    right: 3.8vw;
    left: auto;
  }
  #yukoyamamoto .bg-1 .products .name{
    width: 19.6vw;
    margin: 0 auto;
  }
  #yukoyamamoto .bg-2 {
    background-image: url(../img/yukoyamamoto/bg_2_sp.jpg)
  }
  #yukoyamamoto .bg-2 .products{
    top: 9.72vh;
    left: 3.86%;
  }
  #yukoyamamoto .bg-2 .products .name{
    width: 44.13vw;
    margin: 0 auto;
  }
  #yukoyamamoto .bg-3 {
    background-image: url(../img/yukoyamamoto/bg_3_sp.jpg)
  }
  #yukoyamamoto .bg-3 .products .name{
    width: 15.2vw;
    margin: 0 auto;
  }
  #yukoyamamoto .bg-3 .products{
    top: 39.7vh;
    left: 12.1%;
  }
  #yukoyamamoto .bg-4 {
    background-image: url(../img/yukoyamamoto/bg_4_sp.jpg)
  }
  #yukoyamamoto .bg-4 .products .name{
    width: 25.6vw;
    margin: 0 auto;    
  }
  #yukoyamamoto .bg-4 .products{
    top: 5.54vh;
    left: auto;
    right: 15.1%;
  }
  #yukoyamamoto .bg-5 {
    background-image: url(../img/yukoyamamoto/bg_5_sp.jpg)
  }
  #yukoyamamoto .bg-5 .products .name{
    width: 11.2vw;
    margin: 0 auto;    
  }
  #yukoyamamoto .bg-5 .products{
    top: 16.1vh;
    right: 12.66%;
  }  
  #yukoyamamoto .bg-6 {
    background-image: url(../img/yukoyamamoto/bg_6_sp.jpg)
  }
  #yukoyamamoto .bg-6 .products .name{
    width: 38.53vw;
    margin: 0 auto;    
  }
  #yukoyamamoto .bg-6 .products{
    top: 20.47vh;
    left: 3.73%;
  }

  #mambo .bg-0 {
    background-image: url(../img/mambo/bg_0_sp.jpg)
  }
  #mambo .bg-1-haramaki {
    width: 80%;
  }
  #mambo .bg-1 {
    background-image: url(../img/mambo/bg_1_sp.jpg)
  }
  #mambo .bg-1 .products .name{
    width: 37.46vw;
    margin: 0 auto;    
  }
  #mambo .bg-1 .products{
    top: 23vh;
    left: 4.26%;
  }
  #mambo .bg-2 {
    background-image: url(../img/mambo/bg_2_sp.jpg)
  }
  #mambo .bg-2 .products .name{
    width: 39.06vw;
    margin: 0 auto;    
  }
  #mambo .bg-2 .products{
    top: 16.1vh;
  }
  #mambo .bg-3 {
    background-image: url(../img/mambo/bg_3_sp.jpg)
  }
  #mambo .bg-3 .products .name{
    width: 37.33vw;
    margin: 0 auto;    
  }
  #mambo .bg-3 .products{
    top: 5.25vh;
    left: 50%;
    transform: translate(-50%, 0);
  }
  #mambo .bg-4 {
    background-image: url(../img/mambo/bg_4_sp.jpg)
  }
  #mambo .bg-4 .products .name{
    width: 44.93vw;
    margin: 0 auto;    
  }
  #mambo .bg-4 .products{
    top: 4vh;
    left: 4.263%;
    transform: translate(0, 0);
  }
  #mambo .bg-5 {
    background-image: url(../img/mambo/bg_5_sp.jpg)
  }
  #mambo .bg-5 .products .name{
    width: 44.8vw;
    margin: 0 auto;    
  }
  #mambo .bg-5 .products{
    top: 3.5vh;
    left: 12%;
  }
  #mambo .bg-5 .products a{
    position: absolute;
    width: 30vw;
    top: -1.7vh;
    right: -33vw;
  }

  .btn{
    font-size: 1.05rem;
    padding: .8em 1.2em .7em;
    margin-top: 10px;
  }
  .product .banner h2 {
    font-size: 1.4rem;
    padding: 7.5vh 0;
  }
  .banner a {
    margin-bottom: 3.5vh;
  }
  footer {
    padding: 8px 0 35px
  }
  footer .share {
    width: 50%;
    max-width: 85%;
    margin: 0 auto 18px;
    display: flex;
    justify-content: space-between
  }
  footer .share__ttl img{
    width: 22%;
  }
  footer .share__item {
    width: 40px
  }
  footer .share__item img {
    width: 40px;
  }
  footer .share__ttl{
    margin-bottom: 15px;
  }
  footer .footer__btn{
    padding-top: 23px;
  }
  footer .footer__btn img{
      width: 50%;
      margin: 0 auto;
  }
  footer .footer__btn div {
    margin-bottom: 20px;
  }
  footer .footer__links-store {
    display: flex;
    justify-content: center;
    margin-bottom: 14px;
    flex-direction: column;
    align-items: center
  }
  footer .footer__links-store a {
    text-decoration: none;
    font-size: 1rem;
    color: #000
  }
  footer .footer__links-store li{
    line-height: 1;

  }
  footer .footer__links-store a:after {
    content: "";
    display: inline;
    font-size: 1.3rem
  }
  footer .footer__links-store li:last-child a:after {
    content: none
  }
  footer small {
    display: block;
    text-align: center
  }
  footer small img {
    height: 9px;
    width: auto
  }
  .info {
    padding: 0 0 42px;
  }
  .info__ttl {
    margin-bottom: 40px;
    line-height: 41px;
    height: 45px;
  }
  .info__ttl img {
    height: 15px;
    width: auto
  }
  .info div img{
      width: 80.2%;
      margin: 0 auto;
  }
}