@charset "UTF-8";
.pageBody {
    padding-top: 0;
}
/*
/*# sourceMappingURL=style.css.map */
@media screen and (max-width: 575px) {
  br.pc {
    display: none;
  }
}

@media screen and (min-width: 576px) {
  br.sp {
    display: none;
  }
}

#visual {
  line-height: 0;
}
@media screen and (max-width: 575px) {
  #visual .pc {
    display: none;
  }
}
@media screen and (min-width: 576px) {
  #visual .sp {
    display: none;
  }
}
@media screen and (max-width: 575px) {
  #visual {
    /*padding-top: 35px;*/
  }
}

#intro {
  background-image: url(../img/sp/sweets/intro-bg.png);
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: 100% auto;
  color: #fff;
  padding: 60px 0;
}
@media screen and (max-width: 575px) {
  #intro {
    background-image: url(../img/sp/sweets/intro-bg-sp.png);
    padding-top: 30px;
  }
}
#intro h2 {
  font-size: 28px;
  font-weight: bold;
  letter-spacing: 3px;
  margin-bottom: 30px;
  position: relative;
  padding-bottom: 10px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #intro h2 {
    font-size: 24px;
  }
}
#intro h2:after {
  background: #fff;
  content: "";
  display: block;
  position: absolute;
  height: 2.5px;
  width: 75px;
  bottom: 0;
  left: calc(50% - 37.5px);
}
@media screen and (max-width: 575px) {
  #intro h2:after {
    height: 1.5px;
  }
}
#intro h2 span:before, #intro h2 span:after {
  background-size: 100%;
  content: "";
  display: inline-block;
  position: relative;
  width: 40px;
  height: 36px;
}
@media screen and (max-width: 575px) {
  #intro h2 span:before, #intro h2 span:after {
    width: 35px;
    height: 31px;
  }
}
#intro h2 span:before {
  background-image: url(../img/sp/sweets/head-left-white.png);
  padding-right: 10px;
  top: 0;
  left: -15px;
}
@media screen and (max-width: 575px) {
  #intro h2 span:before {
    left: -10px;
  }
}
#intro h2 span:after {
  background-image: url(../img/sp/sweets/head-right-white.png);
  padding-left: 10px;
  top: 6px;
  right: -15px;
}
@media screen and (max-width: 575px) {
  #intro h2 span:after {
    right: -10px;
  }
}
#intro .head {
  height: 60px;
  margin-bottom: 30px;
  text-align: center;
}
@media screen and (max-width: 575px) {
  #intro .head {
    height: 40px;
  }
}
#intro .head img {
  height: 100%;
  width: auto;
}
#intro .paragraph h3 {
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 2px;
  margin-bottom: 15px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #intro .paragraph h3 {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  #intro .paragraph h3 .equal {
    display: inline-block;
    transform: rotate(-90deg);
  }
}
@media screen and (min-width: 576px) {
  #intro .paragraph h3 br {
    display: none;
  }
}
#intro .paragraph p {
  letter-spacing: 1px;
  line-height: 34px;
  margin-bottom: 30px;
  text-align: center;
}
@media screen and (max-width: 575px) {
  #intro .paragraph p {
    font-size: 13px;
    line-height: 26px;
  }
}
#intro .share {
  background: #ffdcd4;
  margin: 0 auto;
  max-width: 740px;
  padding: 30px;
  text-align: center;
  width: calc(100% - 60px);
}
@media screen and (max-width: 575px) {
  #intro .share {
    padding: 30px 15px;
  }
}
#intro .share .sns img {
  width: 140px;
}
#intro .share h3 {
  color: #751d00;
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 30px;
  position: relative;
}
@media screen and (max-width: 767px) {
  #intro .share h3 {
    font-size: 20px;
  }
}
#intro .share h3:before, #intro .share h3:after {
  background: #751d00;
  content: "";
  display: block;
  position: absolute;
  height: 70px;
  width: 3px;
  bottom: 0;
}
@media screen and (max-width: 767px) {
  #intro .share h3:before, #intro .share h3:after {
    height: 90px;
  }
}
#intro .share h3:before {
  left: 60px;
  transform: rotate(-22.5deg);
}
@media screen and (max-width: 767px) {
  #intro .share h3:before {
    left: calc(50% - 130px);
    transform: rotate(-20deg);
  }
}
#intro .share h3:after {
  right: 60px;
  transform: rotate(22.5deg);
}
@media screen and (max-width: 767px) {
  #intro .share h3:after {
    right: calc(50% - 130px);
    transform: rotate(20deg);
  }
}
#intro .share .hashtag {
  color: #000;
  font-size: 32px;
  font-weight: bold;
  line-height: 32px;
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  #intro .share .hashtag {
    font-size: 24px;
    line-height: 24px;
  }
}
#intro .share .hashtag .ex {
  font-size: 18px;
}
@media screen and (max-width: 767px) {
  #intro .share .hashtag .ex {
    font-size: 14px;
  }
}
#intro .share .desc {
  color: #000;
  line-height: 34px;
  margin-bottom: 15px;
}
@media screen and (max-width: 575px) {
  #intro .share .desc {
    font-size: 13px;
    line-height: 26px;
  }
}
#intro .share .term {
  background: #ffed00;
  color: #000;
  font-size: 18px;
  font-weight: bold;
  margin: 0 auto;
  padding: 5px 10px;
  max-width: 500px;
}
@media screen and (max-width: 767px) {
  #intro .share .term {
    font-size: 14px;
  }
}

#team {
  background-image: url(../img/sp/sweets/team-bg.png);
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: 100% auto;
  padding: 60px 0;
}
#team h2 {
  color: #751d00;
  letter-spacing: 3px;
  text-align: center;
  font-size: 28px;
  font-weight: bold;
  margin-bottom: 30px;
  position: relative;
  padding-bottom: 10px;
}
@media screen and (max-width: 767px) {
  #team h2 {
    font-size: 24px;
  }
}
#team h2:after {
  background: #751d00;
  content: "";
  display: block;
  position: absolute;
  height: 2.5px;
  width: 75px;
  bottom: 0;
  left: calc(50% - 37.5px);
}
@media screen and (max-width: 575px) {
  #team h2:after {
    height: 1.5px;
  }
}
#team h2 span:before, #team h2 span:after {
  background-size: 100%;
  content: "";
  display: inline-block;
  position: relative;
  width: 40px;
  height: 36px;
}
@media screen and (max-width: 575px) {
  #team h2 span:before, #team h2 span:after {
    width: 35px;
    height: 31px;
  }
}
#team h2 span:before {
  background-image: url(../img/sp/sweets/head-left.png);
  padding-right: 10px;
  top: 0;
  left: -15px;
}
@media screen and (max-width: 575px) {
  #team h2 span:before {
    left: -10px;
  }
}
#team h2 span:after {
  background-image: url(../img/sp/sweets/head-right.png);
  padding-left: 10px;
  top: 6px;
  right: -15px;
}
@media screen and (max-width: 575px) {
  #team h2 span:after {
    right: -10px;
  }
}
#team .head {
  height: 60px;
  margin-bottom: 30px;
  text-align: center;
}
@media screen and (max-width: 575px) {
  #team .head {
    height: 40px;
  }
}
#team .head img {
  height: 100%;
  width: auto;
}
#team .photo {
  margin-bottom: 30px;
}
@media screen and (max-width: 575px) {
  #team .photo {
    margin-bottom: 15px;
  }
}
#team .intro {
  text-align: center;
}
#team .intro h3 {
  color: #751d00;
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 15px;
}
@media screen and (max-width: 767px) {
  #team .intro h3 {
    font-size: 20px;
  }
}
#team .intro p {
  letter-spacing: 1px;
  line-height: 34px;
  margin-bottom: 30px;
}
@media screen and (max-width: 575px) {
  #team .intro p {
    font-size: 13px;
    line-height: 26px;
  }
}
#team .members {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 auto;
  max-width: 960px;
  width: calc(100% - 60px);
}
#team .members .member {
  margin: 30px;
  text-align: center;
  width: calc(25% - 60px);
}
@media screen and (max-width: 575px) {
  #team .members .member {
    margin: 15px;
    width: calc(50% - 30px);
  }
}
#team .members .member .photo {
  margin-bottom: 15px;
}
@media screen and (max-width: 575px) {
  #team .members .member .photo {
    margin-bottom: 10px;
  }
}

#osusume {
  background-image: url(../img/sp/sweets/osusume-bg.png);
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: 100% auto;
  padding: 60px 0;
}
@media screen and (max-width: 575px) {
  #osusume {
    background-image: url(../img/sp/sweets/osusume-bg-sp.png);
  }
}
#osusume h2 {
  color: #751d00;
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 30px;
  padding-bottom: 10px;
  position: relative;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #osusume h2 {
    font-size: 18px;
  }
}
#osusume h2:after {
  background: #751d00;
  content: "";
  display: block;
  position: absolute;
  height: 2.5px;
  width: 75px;
  bottom: 0;
  left: calc(50% - 37.5px);
}
@media screen and (max-width: 575px) {
  #osusume h2:after {
    height: 1.5px;
  }
}
#osusume .comments {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 auto;
  max-width: 960px;
  width: calc(100% - 60px);
}
#osusume .comments .item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 15px 30px;
  width: calc(50% - 30px);
}
@media screen and (max-width: 575px) {
  #osusume .comments .item {
    margin: 0 0 15px;
    width: 100%;
  }
}
#osusume .comments .item .person {
  border-radius: 50px;
  /* CSS3草案 */
  -webkit-border-radius: 50px;
  /* Safari,Google Chrome用 */
  -moz-border-radius: 50px;
  /* Firefox用 */
  font-size: 14px;
  margin-right: 15px;
  text-align: center;
  line-height: 80px;
  height: 80px;
  width: 80px;
}
@media screen and (max-width: 575px) {
  #osusume .comments .item .person {
    border-radius: 60px;
    /* CSS3草案 */
    -webkit-border-radius: 60px;
    /* Safari,Google Chrome用 */
    -moz-border-radius: 60px;
    /* Firefox用 */
    font-size: 12px;
    line-height: 60px;
    width: 60px;
    height: 60px;
  }
}
#osusume .comments .item .person.green {
  background: #deebc0;
}
#osusume .comments .item .person.blue {
  background: #d3edfb;
}
#osusume .comments .item .person.yellow {
  background: #fefbc6;
}
#osusume .comments .item .person.pink {
  background: #fbdde9;
}
#osusume .comments .item .comment {
  list-style: none;
  width: calc(100% - 95px);
}
@media screen and (max-width: 575px) {
  #osusume .comments .item .comment {
    width: calc(100% - 75px);
  }
}
#osusume .comments .item .comment li {
  font-size: 13px;
  padding-left: 15px;
  text-indent: -15px;
}
@media screen and (max-width: 575px) {
  #osusume .comments .item .comment li {
    font-size: 12px;
  }
}
#osusume .comments .item .comment li:before {
  content: "■";
  padding-right: 3px;
}

#story {
  background-image: url(../img/sp/sweets/story-bg.png);
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: 100% auto;
  color: #fff;
  padding: 60px 0 0;
}
@media screen and (max-width: 575px) {
  #story {
    padding-top: 30px;
  }
}
#story h2 {
  color: #751d00;
  font-size: 28px;
  letter-spacing: 3px;
  text-align: center;
  font-weight: bold;
  margin-bottom: 30px;
  position: relative;
  padding-bottom: 10px;
}
@media screen and (max-width: 767px) {
  #story h2 {
    font-size: 24px;
  }
}
#story h2:after {
  background: #751d00;
  content: "";
  display: block;
  position: absolute;
  height: 2.5px;
  width: 75px;
  bottom: 0;
  left: calc(50% - 37.5px);
}
@media screen and (max-width: 575px) {
  #story h2:after {
    height: 1.5px;
  }
}
#story h2 span:before, #story h2 span:after {
  background-size: 100%;
  content: "";
  display: inline-block;
  position: relative;
  width: 40px;
  height: 36px;
}
@media screen and (max-width: 575px) {
  #story h2 span:before, #story h2 span:after {
    width: 35px;
    height: 31px;
  }
}
#story h2 span:before {
  background-image: url(../img/sp/sweets/head-left.png);
  padding-right: 10px;
  top: 0;
  left: -15px;
}
@media screen and (max-width: 575px) {
  #story h2 span:before {
    left: -10px;
  }
}
#story h2 span:after {
  background-image: url(../img/sp/sweets/head-right.png);
  padding-left: 10px;
  top: 6px;
  right: -15px;
}
@media screen and (max-width: 575px) {
  #story h2 span:after {
    right: -10px;
  }
}
#story .head {
  height: 60px;
  margin-bottom: 30px;
  text-align: center;
}
@media screen and (max-width: 575px) {
  #story .head {
    height: 40px;
  }
}
#story .head img {
  height: 100%;
  width: auto;
}
#story .paragraph {
  margin: 0 auto;
  max-width: 780px;
  width: calc(100% - 30px);
  margin-bottom: 60px;
}
@media screen and (max-width: 575px) {
  #story .paragraph {
    margin-bottom: 30px;
  }
}
#story .paragraph:last-child {
  margin-bottom: 0;
}
#story .paragraph h3 {
  color: #751d00;
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 30px;
  text-align: center;
}
@media screen and (max-width: 575px) {
  #story .paragraph h3 {
    font-size: 20px;
    margin-bottom: 15px;
  }
}
#story .paragraph p {
  color: #000;
  letter-spacing: 1px;
  line-height: 34px;
  margin-bottom: 30px;
}
@media screen and (max-width: 575px) {
  #story .paragraph p {
    font-size: 13px;
    line-height: 26px;
    margin: 0 30px 30px;
  }
}
@media screen and (max-width: 575px) {
  #story .paragraph .photo {
    margin: 0 30px;
  }
}
