@charset "UTF-8";

/*CSSDocument*/


/* html body base
===============================================================*/


/*
html ----------------------------------------------------------*/

*{ margin:0px; padding:0px;}

body{
  color:#57421d;
  margin:0;
  padding:0;
  background:#FFFFFF;
  font-family: "Shippori Mincho B1", serif;
  /* font-family: "Noto Sans JP", sans-serif; */
  text-align:center;
  font-size:100%;
  -webkit-text-size-adjust: none;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: none;
  position:relative;
}

a:link,
a:visited,
a:hover,
a:active { color:#000;text-decoration:none;}

ul{ list-style:none;}

img {
  padding:0px;
  margin:0px;
  vertical-align:bottom;
  max-width: 100%;
  height: auto;
}
a {
  transition: all 0.5s ease-out;
}
a:hover {
  opacity:0.7;
}

/*
html ----------------------------------------------------------*/
h1 {
  
}


/* body base
===============================================================*/
.l-wrap {
  margin: 0 auto min(18.66vw, 140px);
  max-width: 750px;
  background-color: #eee;
}
.l-content {
  box-shadow: 1px 1px 10px rgba(0, 0, 0, .1);
  background-color: #fff;
}
.l-inner {
  margin: 0 auto;
  box-sizing: content-box;
  padding: 0 min(5.33vw, 40px);
}
@media screen and (max-width: 750px) {
  .l-wrap {
    margin: 0 auto;
    box-shadow: none;
  }
}

.p-header__logo {
  position: absolute;
  top: 0;
  left: 0;
  width: min(16vw, 120px);
}

.p-floatMenuBlock {
  display: block;
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 100;
  opacity: 0;
  -webkit-transition: opacity .4s ease-out;
  transition: opacity .4s ease-out;
}
.p-floatMenuBlock.is-visible {
  opacity: 1;
}
.p-floatMenu {
  height: 108px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #f8dbd9cc;
}
@media screen and (max-width: 750px) {
  .p-floatMenu {
    height: 70px;
  }
}

.p-footer {
  background-color: #fff;
}
.p-footer__copyright {
  font-family: "Shippori Mincho B1", serif;
  font-size: min(4vw, 30px);
  font-weight: 400;
  line-height: 1;
  letter-spacing: .1em;
  display: flex;
  justify-content: center;
  align-items: center;
  height: min(14.4vw, 108px);
}
@media screen and (max-width: 750px) {
  .p-footer {
    padding-bottom: 70px;
  }
}