@charset "UTF-8";
/*薄いベージュ*/
p::before {
  content: "";
  display: block;
  height: 0;
  width: 0;
  margin-top: calc((1 - 1.4) * 0.5em);
}

section {
  margin-bottom: 40px;
}

header {
  padding-top: 70px;
}
header #logo {
  width: 50%;
}
header #logo img {
  width: 233px;
}
header .site-navigation-over {
  width: 50%;
  padding-top: 70px;
}

.about header {
  background: url(../images/about/mainimg.jpg) top center no-repeat;
  height: 499px;
}
.about #content01 .contentsinner2 {
  position: relative;
}
.about #content01 .h2box {
  position: absolute;
  top: -120px;
  left: -20px;
}
.about #content01 .h2box img {
  width: 120px;
}
.about #content01 .imgbox {
  width: 382px;
}
.about #content01 .comments {
  width: 577px;
  text-align: left;
}
.about #content01 .comments h3 {
  border-bottom: 1px #333 solid;
  padding-bottom: 10px;
  margin-bottom: 20px;
  text-align: left;
}
.about #content01 .comments p {
  font-size: 1.4em;
  margin-bottom: 10px;
}
.about .col2box img {
  margin-bottom: 10px;
}
.about #content02 {
  margin-top: 80px;
}
.about #content02 .h2box {
  text-align: left;
}
.about #content02 .h2box h2 {
  font-weight: normal;
  font-size: 1.8em;
  line-height: 1.2;
}
.about #content02 .aboutinfo .readtext {
  text-align: left;
  font-size: 1.4em;
  padding-top: 20px;
  margin-bottom: 50px;
}
.about #content02 .aboutinfo .subread {
  text-align: left;
  font-size: 1.2em;
  margin-top: 20px;
}
.about #content02 .aboutinfo .aboutinfo_a {
  width: calc(100% - 350px);
}
.about #content02 .aboutinfo .aboutinfo_b {
  width: 335px;
}
.about #content02 .aboutinfo dl {
  text-align: left;
}
.about #content02 .aboutinfo dl dt {
  margin-bottom: 10px;
}
.about #content02 .aboutinfo dl dt img {
  width: 40px;
}
.about #content02 .aboutinfo dl dd p {
  font-size: 1.2em;
}
.about #content02 .aboutinfo dl dd ul {
  margin-left: 20px;
}
.about #content02 .aboutinfo dl dd li {
  font-size: 1.2em;
  list-style: disc;
}

.kimono-obi header {
  background: url(../images/kimono-obi/mainimg.jpg) top center no-repeat;
  height: 499px;
}
.kimono-obi #content01 {
  margin-bottom: 180px;
}
.kimono-obi #content01 .contentsinner2,
.kimono-obi #content02 .contentsinner2 {
  position: relative;
}
.kimono-obi #content01 .h2box,
.kimono-obi #content02 .h2box {
  position: absolute;
  top: -120px;
  left: -20px;
}
.kimono-obi #content01 .h2box img,
.kimono-obi #content02 .h2box img {
  width: 65px;
}
.kimono-obi #content01 .itemboxover,
.kimono-obi #content02 .itemboxover {
  padding-left: 166px;
}
.kimono-obi #content01 .itembox,
.kimono-obi #content02 .itembox {
  margin-bottom: 80px;
}
.kimono-obi #content01 .itembox .imgbox,
.kimono-obi #content02 .itembox .imgbox {
  width: 330px;
}
.kimono-obi #content01 .itembox .imgbox.soldout,
.kimono-obi #content02 .itembox .imgbox.soldout {
  position: relative;
}
.kimono-obi #content01 .itembox .imgbox.soldout img,
.kimono-obi #content02 .itembox .imgbox.soldout img {
  position: relative;
  z-index: 1;
}
.kimono-obi #content01 .itembox .imgbox.soldout::after,
.kimono-obi #content02 .itembox .imgbox.soldout::after {
  content: "SOLD OUT";
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  width: 100%;
  height: 100%;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 30px;
  letter-spacing: 0.1em;
  text-shadow: 1px 1px 2px #000;
  background: rgba(0, 0, 0, 0.2);
  z-index: 2;
}
.kimono-obi #content01 .itembox .comments,
.kimono-obi #content02 .itembox .comments {
  width: calc(100% - 350px);
  text-align: left;
}
.kimono-obi #content01 .itembox .comments h3,
.kimono-obi #content02 .itembox .comments h3 {
  font-size: 1.4em;
  line-height: 1.2;
  padding-bottom: 10px;
  margin-bottom: 20px;
  border-bottom: 1px #333 solid;
  font-weight: normal;
  color: #B3424A;
}
.kimono-obi #content01 .itembox .comments p,
.kimono-obi #content02 .itembox .comments p {
  font-size: 1.2em;
}

.pattern header {
  background: url(../images/pattern/mainimg.jpg) top center no-repeat;
  height: 499px;
}
.pattern #content01 .contentsinner2 {
  position: relative;
}
.pattern #content01 .h2box {
  position: absolute;
  top: -120px;
  left: -20px;
}
.pattern #content01 .h2box img {
  width: 65px;
}
.pattern #content01 .h2box2 {
  margin-bottom: 40px;
}
.pattern #content01 .h2box2 img {
  width: 589px;
}
.pattern #content01 .itemboxover {
  padding-left: 166px;
}
.pattern #content01 .itemboxover .upperbox {
  width: 486px;
  margin: 0 auto 100px auto;
}
.pattern #content01 .itemboxover .upperbox h3 {
  font-size: 1.8em;
  line-height: 1.2;
  padding-bottom: 10px;
  margin-bottom: 20px;
  margin-top: 20px;
  border-bottom: 1px #333 solid;
  font-weight: normal;
  text-align: left;
}
.pattern #content01 .itemboxover .upperbox p {
  font-size: 1.2em;
  text-align: left;
}
.pattern #content01 .itemboxover .upperbox .readtext {
  font-size: 1.4em;
  margin-bottom: 10px;
  text-align: center;
}
.pattern #content01 .itemboxover .patternbox {
  width: 800px;
  margin: 0 auto;
}
.pattern #content01 .itemboxover .patternbox h2 {
  font-size: 1.8em;
  line-height: 1.2;
  font-weight: normal;
}
.pattern #content01 .itemboxover .patternbox li {
  width: 48%;
  margin-bottom: 80px;
}

.shopinfo header {
  background: url(../images/shopinfo/mainimg.jpg) top center no-repeat;
  height: 499px;
}
.shopinfo #content01 .contentsinner2 {
  position: relative;
}
.shopinfo #content01 .h2box {
  position: absolute;
  top: -120px;
  left: -20px;
}
.shopinfo #content01 .h2box img {
  width: 120px;
}
.shopinfo #content01 dl {
  text-align: left;
}
.shopinfo #content01 dl dt {
  font-size: 1.1em;
  font-size: 1.2em;
  color: #3a513c;
  border-bottom: 1px #333 solid;
  padding-bottom: 5px;
  margin-bottom: 10px;
}
.shopinfo #content01 dl dd {
  font-size: 1.2em;
  margin-bottom: 20px;
  line-height: 1.4;
}
.shopinfo #content01 dl dd.mini {
  font-size: 1em;
}
.shopinfo #content02 .mapbox iframe {
  width: 100%;
}

.contact header {
  background: url(../images/contact/mainimg.jpg) top center no-repeat;
  height: 499px;
}
.contact #content01 .contentsinner2 {
  position: relative;
}
.contact #content01 .h2box {
  position: absolute;
  top: -120px;
  left: -20px;
}
.contact #content01 .h2box img {
  width: 38px;
}
.contact #content01 .formbox {
  background-color: #f4f1eb;
  padding: 50px 0 20px 200px;
  margin-left: 100px;
}
.contact #content01 dl {
  text-align: left;
  font-size: 1.4em;
}
.contact #content01 dl dt {
  width: 8em;
  float: left;
  font-weight: normal;
}
.contact #content01 dl dd {
  padding-left: 9em;
  margin-bottom: 30px;
}

.privacy #content01 {
  margin-top: 40px;
  text-align: left;
}
.privacy #content01 p {
  margin-bottom: 20px;
}
.privacy #content01 dt {
  margin-bottom: 10px;
}
.privacy #content01 dd {
  margin-bottom: 30px;
}