@charset "utf-8";

/*** reset ***/
#kuraloveCont {
  width: 100%;
  background-color: #ffff;
}
#kuraloveCont * {
  box-sizing: border-box;
}
#kuraloveCont img {
  max-width: 100%;
  height: auto;
  image-rendering: -webkit-optimize-contrast;
}
#container + img {
  position: fixed;
  bottom: 0;
  right: 0;
  opacity: 0;
}
#container #wrapper {
  width: 100%;
  margin-bottom: 0;
}
#breadcrumbs {
  margin-bottom: 0px;
}
picture {
  display: block;
}
section.section {
  margin-bottom: 90px;
}
.kuraloveCont p,
.kuraloveCont h1,
.kuraloveCont h2,
.kuraloveCont h3,
.kuraloveCont h4,
.kuraloveCont h5 {
  line-height: 1.5;
}
.container {
  max-width: 950px;
  margin-left: auto;
  margin-right: auto;
}
.shirayuki .container {
  max-width: 780px;
}
.regeta .container, .mizuno .container, .inner .container, .uvcare .container {
  max-width: 775px;
}
@media screen and (max-width: 667px) {
#kuraloveCont img {
  width: 100%;
}
section.section {
  margin-bottom: 14vw;
}
.container {
  padding: 0 7vw;
}
}


/*** PC or SP ***/
@media screen and (min-width: 668px) {
  .sp {
    display: none !important;
  }
}
@media screen and (max-width: 667px) {
  .pc {
    display: none !important;
  }
}


/*** pageTop ***/
.pageTop {
  position: fixed;
  bottom: 80px;
  right: 80px;
  z-index: 10;
  display: none;
}
.pageTop img {
  width: 50px;
}
@media screen and (max-width: 667px) {
  .pageTop {
    bottom: 5.4vw;
    right: 3.2vw;
  }
  .pageTop img {
    width: 10.2vw;
  }
}


/*** pageHeader ***/
.pageHeader { 
  margin-bottom: 0;
}
.pageHeader__titleArea {
  height: 200px;
  background: url(/item/kuralove/images/common/header_pagebg01.jpg) no-repeat right center / cover;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
.pageHeader__titleArea span {
  position: absolute;
  top: 145px;
  left: 50%;
  margin: 0 0 0 320px;
  display: block;
}
.pageHeader__descArea {
  background: #EB937F;
}
.pageHeader__text01 {
  color: #fff;
  font-size: 18px;
  text-align: center;
  padding: 5px;
}
@media screen and (max-width: 667px) {
.pageHeader {
  margin-bottom: 0;
}
.pageHeader__titleArea {
  height: initial;
  padding: 5vw 7vw;
  background: url(/item/kuralove/images/common/header_pagebg01_sp.jpg) no-repeat right center / cover;
  justify-content: flex-start;
}
.pageHeader__titleArea h1 {
  width: 52vw;
}
.pageHeader__titleArea span {
  width: 22.5vw;
  bottom: -13.5vw;
  right: 5vw;
  top: initial;
  left: initial;
  margin: 0;
}
.pageHeader__text01 {
  font-size: 3.5vw;
  text-align: left;
  text-indent: -1em;
  width: 65vw;
  padding: 2vw 1vw 2vw 2.5vw;
}
}


/*** Button ***/
.btn , .btn2 {
  width: 100%;
  color: #fff!important;
  font-size: 17px;
  font-weight: 700;
  text-decoration: none!important;
  text-align: center;
  padding: 10px;
  border-radius: 5em;
  display: block;
  transition: opacity 0.3s ease;
}
.btn:hover {
  cursor: pointer;
  text-decoration: none!important;
  opacity: 0.7;
}
.btn--typeGreen {
  background: #ACD88C;
  border: solid 1px #ACD88C;
}
.btn--typeOrange {
  background: #EB937F;
  border: solid 1px #EB937F;
}
.btn--typeYellow {
  background: #F7A93F;
  border: solid 1px #EB937F;
}
.btn--typeWhite {
  color: #B691C2!important;
  background: #FFFFFF;
  border: solid 1px #B691C2;
}
.btn--gray {
  color: #fff!important;
  background: #aeaeae;
  border: solid 1px #7b7b7b;
}
.btnBlock {
  width: 446px;
  margin: 75px auto 100px;
}
.btnBlock .btn {
  margin-bottom: 30px;
}
@media screen and (max-width: 667px) {
.btn {
  font-size: 4.7555vw;
  padding: 2vw;
}
.btnBlock {
  width: 100%;
  margin: 14vw auto;
}
.btnBlock .btn {
  margin-bottom: 4vw;
}
}


/*** itemList ***/
.itemList {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  grid-gap: 45px 60px;
}
.itemList__pic {
  margin: 0 auto 20px;
}
.itemList__title , .itemList__title2 {
  font-size: 16px;
  margin-bottom: 10px;
}
.itemList__text {
  font-size: 15px;
}
@media screen and (max-width: 667px) {
.itemList  {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  grid-gap: 10.5vw 0;
}
.itemList__pic {
  margin: 0 auto 4vw;
}
.itemList__pic--full {
  padding-left: 0;
  padding-right: 0;
}  
.itemList__pic--XXL {
  padding-left: 3.5vw;
  padding-right: 3.5vw;
}  
.itemList__pic--XL {
  padding-left: 7vw;
  padding-right: 7vw;
}  
.itemList__pic--L {
  padding-left: 10.5vw;
  padding-right: 10.5vw;
}  
.itemList__pic--M {
  padding-left: 14vw;
  padding-right: 14vw;
}
.itemList__pic--S {
  padding-left: 20vw;
  padding-right: 20vw;
}
.itemList__pic--XS {
  padding-left: 22.5vw;
  padding-right: 22.5vw;
}
.itemList__pic--XXS {
  padding-left: 25vw;
  padding-right: 25vw;
}
.itemList__title , .itemList__title2 {
  font-size: 4.2555vw;
  margin-bottom: 3vw;
}
.itemList__text {
  font-size: 4vw;
}
}


/*** section parts ***/
.section__mv {
  text-align: center;
  margin-bottom: 30px;
  background: #FFFAE2;
}
.section__mv picture,.section__mv picture source,.section__mv picture img {
  line-height: 0;
}
.section__pic01 {
  text-align: center;
  margin: 45px 0;
}
.section__pic01--alignL {
  text-align: left;
}
.section__title01 {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 15px;
}
.section__desc01 {
  font-size: 15px;
  text-align: left;
}
@media screen and (max-width: 667px) {
.section__mv {
  margin-bottom: 7vw;
}
.section__pic01 {
  margin: 7vw 0;
}
.section__pic01--alignL {
  text-align: center;
}
.section__title01 {
  color: #1C667F;
  font-size: 5.2555vw;
  margin-bottom: 3.5vw;
}
.section__desc01 {
  font-size: 4vw;
}
}


/*** Logo ***/
.brandLogo {
  min-height: 170px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  grid-gap: 15px 15px;
}
.brandLogo__item {
  line-height: 1;
}
@media screen and (max-width: 667px) {
  .brandLogo {
    min-height: 28vw;
    grid-gap: 3.5vw 3.5vw;
  }
  .brandLogo--shirayuki .brandLogo__item {
    padding: 0 14.5vw;
  }
  .brandLogo--regeta .brandLogo__item {
    padding: 0 21vw;
  }
  .brandLogo--mizuno .brandLogo__item {
    padding: 0 22vw;
  }
  .brandLogo--inner .brandLogo__item:first-of-type {
    width: 42%;
  }
  .brandLogo--inner .brandLogo__item:last-of-type {
    width: 15%;
  }
  .brandLogo--uvcare .brandLogo__item {
    padding: 0 14.5vw;
  }
}


/*** info ***/
.infoBlock {
  margin-top: 60px;
}
.infoBrandLogo {
  margin-bottom: 10px;
}
.infoName {
  margin-bottom: 15px;
}
.infoName dt {
  font-size: 20px;
  font-weight: 700;
}
.infoName dt span {
  font-size: 15px;
}
.infoName dd {
  font-size: 20px;
  font-weight: 700;
  margin-top: 10px;
  padding-top: 10px;
  border-top: solid 1px #707070;
}
.infoName dd span {
  font-size: 15px;
  font-weight: 400;
}
.infoPrice__note {
  font-size: 13px;
  margin-top: 10px;
}
.infoSize {
  margin-top: 30px;
}
.infoSize__pic {
  margin-top: 5px;  
}
.infoSize__note {
  font-size: 13px;
}
@media screen and (max-width: 667px) {
.infoBlock {
  margin-top: 14vw;
}
.infoBrandLogo {
  margin-bottom: 3vw;
}
.infoBrandLogo--shirayuki {
  width: 45vw;
}
.infoBrandLogo--regeta {
  width: 45vw;
}
.infoBrandLogo--innerBradelis {
  width: 49vw;
}
.infoBrandLogo--innerSelect {
  width: 18vw;
}
.infoName {
  margin-bottom: 3.5vw;
}
.infoName dt {
  font-size: 5.2555vw;
}
.infoName dt span {
  font-size: 4vw;
}
.infoName dd {
  font-size: 5.2555vw;
  margin-top: 3vw;
  padding-top: 3vw;
}
.infoName dd span {
  font-size: 4vw;
}
.infoPrice__pic--L {
  width: 75vw;
}
.infoPrice__pic--M {
  width: 60vw;
}
.infoPrice__pic--S {
  width: 30vw;
}
.infoPrice__note {
  font-size: 3.5vw;
  margin-top: 3vw;
}
.infoSize {
  margin-top: 3.5vw;
}
.infoSize__pic {
  width: 100%;
  margin-top: 2.5vw;
}
.infoSize__pic--M {
  width: 60vw;
}
.infoSize__pic--S {
  width: 42vw;
}
.infoSize__note {
  font-size: 3.5vw;
}
}


/*** overview ***/
.overview {
  text-align: center;
  width: 600px;
  margin: auto;
  padding: 30px 40px;
  border: solid 1px #707070;
}
.overviewBrandLogo {
  margin: 0 auto 15px;
}
.overview .section__desc01 {
  font-size: 18px;
  line-height: 1.75;
}
@media screen and (max-width: 667px) {
.overview {
  width: 100%;
  margin: 17.5vw auto 0;
  padding: 7vw;
}
.overviewBrandLogo {
  width: 45vw;
  margin-bottom: 3.5vw;
}
.overview .section__desc01 {
  font-size: 4.7555vw;
}
}

/*** separator ***/
.separator01 {
  width: 100%;
  height: 5px;
  border-top: solid 1px #707070;
  border-bottom: solid 1px #707070;
}
.separator02 {
  width: 100%;
  height: 35px;
  margin-bottom: -35px;
  overflow: hidden;
  position: relative;
}
.separator02:before {
  content:"";
  width: 100%;
  height: 1px;
  margin: auto;
  background: #707070;
  position: relative;
  z-index: 1;
  display: block;
}
.separator02:after {
  content:"";
  width: 35px;
  height: 35px;
  margin: auto;
  background: #ffffff;
  border: solid 1px #707070;
  position: absolute;
  top: -51%;
  left: 0;
  right: 0;
  z-index: 2;
  transform: rotate(45deg);
  display: block;
}


/*** order ***/
.order .telLink {
  pointer-events: none;
  display: block;
}
@media screen and (max-width: 667px) {
.order .container {
  padding: 0;
}
.order .telLink {
  pointer-events: initial;
}
}


/*** モーダル ***/
.modalArea {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  display: none;
}
.modalBg {
  width: 100%;
  height: 100%;
  background-color: rgba(30,30,30,0.9);
}
.modalWrapper {
  width: 100%;
  height: 90vh;
  max-width: 1025px;
  margin: auto;
  padding: 60px 30px;
  background-color: #fff;
  overflow: scroll;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.closeModal {
  width: 446px;
  margin: 60px auto 0;
}
.closeModal:hover {
  cursor: pointer;
}
@media screen and (max-width: 667px) {
.modalWrapper {
  width: 90%;
  height: 80vh;
  max-width: initial;
  padding: 7vw 3.5vw;
  top: 14vw;
}
.closeModal {
  width: 90%;
  margin: 7vw auto;
}
}
