@charset "utf-8";

/***********
module-breadcrumb
************/

.breadcrumb{
  padding-top: 5px;
  margin-bottom: 10px;
  border-top: 1px solid #eee;
}

.breadcrumb-lists{
  display: flex;
  flex-wrap: wrap;
  font-size: 85%;
  position: relative;
/*  background-color: #f6f6f6;*/
  border-radius: 4px;
  padding: 5px 12px 5px 18px;
}
.breadcrumb-lists::before{
  display: inline-block;
  font-family: 'themify';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e69b";
  color: #e46e93;
  font-size: 12px;
  position: absolute;
  left: 0;
  top: 6px;
}
.breadcrumb-lists li {
}
.breadcrumb-lists a{
  text-decoration: none;
  color: #e46e93;
}
.breadcrumb-lists a:hover{
  background-color: rgba(228, 110, 147, 0.15);
}
.breadcrumb-lists li:not(:first-child)::before {
  display: inline-block;
  font-family: 'themify';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e649";
  color: #4d5055;
  padding: 0 0.2em;
  transform: scale(0.7);
  opacity: 0.5;
}

@media screen and (max-width:834px) {

  .breadcrumb{
    padding: 0 4% 0 4%;
    overflow: auto;
    margin-bottom: 5px;
    border: none;
  }
  .breadcrumb::-webkit-scrollbar {
      display:none;
  }
  .breadcrumb-lists{
    font-size: 85%;
    flex-wrap:nowrap;
    letter-spacing: 0;
    white-space: nowrap;
    padding: 2px 12px 5px 15px;
  }
  .breadcrumb-lists::before{
    font-size: 10px;
    left: 0;
    top: 4px;
  }
  .breadcrumb-lists li:not(:first-child)::before {
    padding: 0 0.1em;
    transform: scale(0.6);
  }
  .breadcrumb-lists li:last-child{
    padding-right: 40px;
  }

}

/***********
module-pageHeading
************/

.pageHeading-title {
  text-align: center;
  font-weight: normal;
  margin-bottom: 30px;
}
.pageHeading-title::after {
  content: "";
  display: block;
  width: 1px;
  height: 40px;
  background-color: #4d5055;
  margin: 10px auto 0;
}
.pageHeading-title span {
  display: block;
  font-family: 'Hannari',"Hiragino Mincho ProN","游明朝",YuMincho,serif;
  font-size: 250%;
  letter-spacing: 0.05em;
}
.pageHeading-title small {
  display: block;
  font-family: 'Cinzel',"Hiragino Mincho ProN","游明朝",YuMincho,serif;
  font-size: 200%;
  padding-top: 0.3em;
  letter-spacing: 0.15em;
  color: #e46e93;
}


.pageHeading-lead{
  font-size: 124%;
  line-height: 1.8;
  text-align: center;
  padding-bottom: 40px;
}

@media screen and (max-width:834px) {

  .pageHeading-title {
    margin-bottom: 10px;
  }
  .pageHeading-title::after {
    height: 20px;
    margin: 6px auto 0;
  }
  .pageHeading-title span {
    font-size: 170%;
    letter-spacing: 0;
  }
  .pageHeading-title small {
    font-size: 93%;
  }

  .pageHeading-lead{
    font-size: 116%;
    line-height: 1.7;
    padding-bottom: 30px;
  }

}

/***********
module-searchSection
************/

.searchSection{
  background-color: #edf0f4;
  padding: 15px 0 15px;
  font-feature-settings: "palt";
}

.searchSection-title {
  text-align: center;
  padding-bottom: 15px;
  font-weight: normal;
}
.searchSection-title span {
  display: block;
  font-family: 'Hannari',"Hiragino Mincho ProN","游明朝",YuMincho,serif;
  font-size: 154%;
}
.searchSection-title small {
  display: block;
  font-family: 'Cinzel',"Hiragino Mincho ProN","游明朝",YuMincho,serif;
  font-size: 100%;
  padding-top: 0.1em;
  letter-spacing: 0.15em;
  color: #e46e93;
}

.searchSection-block {
/*
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
*/
}
.searchSection-item {
  width: 47%;
}
.searchSection-item-wide {
  width: 100%;
}


.searchSection-area {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.searchSection-area a {
  display: block;
  background-color: #fff;
  width: 180px;
  padding: 18px 5px 25px 5px;
  margin: 0 5px 10px;
  text-align: center;
  color: #4d5055;
  text-decoration: none;
  box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.15);
  position: relative;
}
.searchSection-area a:hover,
.searchSection-area a.is-active {
  background-color: #e46e93;
  color: #fff;
}
.searchSection-area a span {
  display: block;
  font-size: 124%;
  font-weight: 600;
  line-height: 1.3;
}
.searchSection-area a small {
  font-size: 85%;
  font-weight: 600;
}
.searchSection-area a::after {
  font-family: 'themify';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e64b";
  position: absolute;
  left: 50%;
  bottom: 5px;
  font-size: 12px;
  margin-left: -0.5em;
  opacity: 0.5;
}


.searchSection-color {
  display: flex;
  justify-content: center;
}
.searchSection-color a {
  display: block;
  position: relative;
  margin: 0 5px 10px 0;
}
.searchSection-color a:hover {
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.3);
}
.searchSection-color a.is-active {
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.6);
}
.searchSection-color a img {
  width: 77px;
  max-width: 77px;
  height: 50px;
}

.searchSection-color-name {
  display: block;
  position: absolute;
  right: 5px;
  bottom: 5px;
  line-height: 1;
  color: #fff;
  font-size: 10px;
  font-feature-settings: "palt";
  text-shadow:
    0px 0px 1px #000,
    0px 0px 1px #000;
}
.searchSection-color-dark {
  color: #000;
}



.searchSection-type {
  display: flex;
  align-items: flex-start;
}
.searchSection-type:not(:last-child) {
  padding-bottom: 5px;
}
.searchSection-type > dt {
  width: 10em;
  background-color: #fff;
  padding: 4px 0;
  text-align: center;
  font-weight: bold;
}
.searchSection-type > dd {
  flex: 1;
  padding: 4px 0 4px 20px;
}



.searchSection-type-list {
  display: flex;
  flex-wrap: wrap;
}
.searchSection-type-list li:not(:last-child)::after {
  content: "/";
  padding: 0 0.5em;
  opacity: 0.5;
}
.searchSection-type-list a.is-active {
  font-weight: bold;
  text-decoration: none;
  color: #4d5055;
}


.searchSection-trigger {
  text-align: right;
  padding-top: 10px;
}
.searchSection-trigger-btn {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  background: none;
  box-shadow: none;
  font-family: Hiragino Sans,Hiragino Kaku Gothic ProN,YuGothic,"Yu Gothic",Meiryo,sans-serif;
  font-size: 116%;
  cursor: pointer;
}
.searchSection-trigger-btn i {
  display: inline-block;
  margin-right: 0.2em;
  transform: scale(1.1);
}
.searchSection-trigger-btn:hover {
  text-decoration: underline;
}

.searchSection-advance{
  display: none;
}
.searchSection-advance .search{
  margin-top: 20px;
}

@media screen and (max-width:834px) {

  .searchSection{
    padding: 20px 0;
  }

  .searchSection-block {
    display: block;
  }
  .searchSection-item {
    width: auto;
  }


  .searchSection-area {
    margin-left: -2%;
    justify-content: flex-start;
  }
  .searchSection-area a {
    width: 48%;
    padding: 10px 2px 15px;
    margin: 0 0 2% 2%;
    letter-spacing: 0;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1);
  }
  .searchSection-area a:hover {
  }
  .searchSection-area a span {
    font-size: 100%;
  }
  .searchSection-area a small {
    font-size: 77%;
  }
  .searchSection-area a::after {
    bottom: 3px;
    font-size: 10px;
  }





  .searchSection-type {
  }
  .searchSection-type:not(:last-child) {
  }
  .searchSection-type > dt {
    width: 6em;
    padding: 2px 0;
  }
  .searchSection-type > dd {
    padding: 2px 0 2px 10px;
  }

  .searchSection-type-list {
    margin-top: -2px;
  }
  .searchSection-type-list li:not(:last-child)::after {
    content: "/";
    padding: 0 0.3em;
  }
  .searchSection-type-list a {
    display: inline-block;
    padding: 2px 0;
  }

  .searchSection-color {
    flex-wrap: wrap;
    justify-content: flex-start;
    padding-bottom: 10px;
  }
  .searchSection-color a {
    width: 56px;
    margin: 0 2px 2px 0;
    letter-spacing: 0;
  }

  .searchSection-color a img {
    width: 100%;
    max-width: 100%;
    height:40px;
  }


  .searchSection-color-name {
    right: 2px;
    bottom: 2px;
    font-size: 8px;
  }


  .searchSection-trigger {
    padding-top: 5px;
  }
  .searchSection-trigger-btn {
    font-size: 100%;
  }
  .searchSection-advance{
  }
  .searchSection-advance .search{
    margin-top: 15px;
  }


}

/***********
module-shopList
************/

.shopList {
}
.shopList > li {
  margin-bottom: 60px;
}
.shopList > li > a,
.shopList > li > span {
  display: block;
  background-color: #fff;
  padding: 30px 40px;
  color: #4d5055;
  text-decoration: none;
  position: relative;
}

.shopList-heading {
  padding-left: 35%;
  margin-bottom: -2em;
  position: relative;
  z-index: 2;
}

.shopList-heading:empty {
  display: none
}

.shopList-title {
  width: 100%;
  color: #e46e93;
  line-height: 1.3;
  font-size: 185%;
}
.shopList-title a{
  text-decoration: none;
}
.shopList-title:hover,
.shopList-title a:hover {
  text-decoration: underline;
}

.shopList-review {
  padding-top: 5px;
}


.shopList-block {
  display: flex;
  justify-content: space-between;
}

.shopList-img {
  width: 30%;
  display: block;
}
.shopList-img img {
}
.shopList-inner {
  width: 65%;
  padding-top: 3.2em;
}

.shopList-service {
  font-size: 85%;
    font-feature-settings: "palt";
  padding-bottom: 10px;
}
.shopList-address {
  font-style: normal;
  padding-bottom: 5px;
}
.shopList-address strong {
  display: inline-block;
  color: #e46e93;
  padding-right: 1em;
}
.shopList-address span {
  display: inline-block;
}

.shopList-data {
  display: inline-block;
}
.shopList-data + .shopList-data {
  margin-left: 1em;
}
.shopList-data a{
  color: #4d5055;
  text-decoration: none;
}
.shopList-data-icon {
  display: inline-block;
  margin-right: 0.2em;
  padding: 0 0.2em;
  color: #e46e93;
  font-weight: bold;
  line-height: 1.5;
  box-shadow: 0 0 0 1px #e46e93 inset;
}

.shopList-address i,
.shopList-data i {
  display: inline-block;
  margin-right: 0.5em;
  transform: scale(1.2);
  color: #e46e93;
}

.shopList-summary {
  line-height: 1.7;
  padding-top: 15px;
}


.shopList-link {
  display: flex;
  padding-top: 15px;
  margin-left: -1px;
}
.shopList-link a {
  width: 33%;
  display: inline-block;
  padding: 15px 10px;
  background-color: #90b45c;
  color: #fff;
  font-weight: bold;
  font-size: 131%;
  text-decoration: none;
  text-align: center;
  margin: 0 1px;
  position: relative;
}
.shopList-link a:hover {
  background-color: #5e7d32;
}
.shopList-link a::after {
  font-family: 'themify';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e649";
  position: absolute;
  color: #fff;
  font-size: 12px;
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top: -0.5em;
}


/*
recommend
*/

.shopList.shopList-recommend li a{
  background-color: #edf0f4;
}

/*
half
*/

@media screen and (min-width:1025px) {

  .shopList.shopList-half{
    display: flex;
    flex-wrap: wrap;
    margin-left: -2%;
  }
  .shopList.shopList-half li{
    width: 48%;
    margin-left: 2%;
    margin-bottom: 2%;
  }

  .shopList.shopList-half li a {
    padding: 20px 20px;
    color: #4d5055;
    text-decoration: none;
    position: relative;
  }

  .shopList.shopList-half .shopList-heading {
    padding-left: 0;
    margin-bottom: 0;
    padding-bottom: 20px;
  }

  .shopList.shopList-half .shopList-title {
    font-size: 154%;
  }

  .shopList.shopList-half .shopList-img {
    width: 35%;
    padding-top: 0;
  }
  .shopList.shopList-half .shopList-inner {
    width: 60%;
    padding-top: 0;
  }
}

@media screen and (max-width:834px) {

  .shopList {
  }
  .shopList > li {
    margin-bottom: 20px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  }
  .shopList > li > a,
  .shopList > li > span {
    padding: 10px 15px;
    color: #4d5055;
    text-decoration: none;
    position: relative;
  }

  .shopList-heading {
    padding-left: 0;
    margin-bottom: 0;
    position: relative;
    z-index: 2;
    padding: 5px 0 15px 0;
  }
  .shopList-title {
    width: 100%;
    font-size: 124%;
    padding-left: 0;
    margin-bottom: 0;
    text-decoration: underline;
  }
  .shopList-review {
    font-size: 85%;
    padding-top: 5px;
  }

  .shopList-block {
    display: block;
  }
  .shopList-img {
    width: auto;
    text-align: center;
  }
  .shopList-inner {
    width: auto;
    padding-top: 15px;
    padding-bottom: 15px;
  }


  .shopList-service {
    padding-bottom: 15px;
    font-size: 77%;
  }
  .shopList-address {
    font-size: 93%;
    padding-bottom: 5px;
  }
  .shopList-address strong {
    font-size: 100%;
    display: block;
    color: #e46e93;
    padding-right: 0;
  }
  .shopList-address span {
    display: block;
    padding-left: 1.3em;
  }

  .shopList-data {
    font-size: 93%;
    display: inline-block;
  }
  .shopList-data + .shopList-data {
    margin-left: 1em;
  }
  .shopList-data-icon {
  }

  .shopList-address i,
  .shopList-data i {
    display: inline-block;
    margin-right: 0.5em;
    transform: scale(1.2);
    color: #e46e93;
  }

  .shopList-summary {
    font-size: 93%;
    line-height: 1.7;
    padding-top: 20px;
  }

  .shopList-link {
    padding-top: 15px;
  }
  .shopList-link a {
    width: 33%;
    padding: 12px 10px;
    font-size: 93%;
  }
  .shopList-link a::after {
    font-size: 8px;
    right: 3px;
  }

}



@media screen and (max-width:834px) {

  .shopList-spSmall {
  }
  .shopList-spSmall > li {
    margin-bottom: 10px;
  }
  .shopList-spSmall > li > a,
  .shopList-spSmall > li > span {
  }

  .shopList-spSmall .shopList-heading {
    padding-bottom: 10px;
  }
  .shopList-spSmall .shopList-title {
    width: 100%;
    font-size: 124%;
    padding-left: 0;
    margin-bottom: 0;
    text-decoration: underline;
  }
  .shopList-spSmall .shopList-review {
    font-size: 85%;
    padding-top: 5px;
  }

  .shopList-spSmall .shopList-block {
    display: block;
    flex-direction: row-reverse;
  }
  .shopList-spSmall .shopList-img {
    width: 40%;
    float: right;
    padding: 0 0 5px 5px;
  }
  .shopList-spSmall .shopList-inner {
    width: auto;
    padding-top: 0;
    padding-bottom: 0;
  }

  .shopList-spSmall .shopList-service {
    padding-bottom: 10px;
    font-size: 70%;
  }

  .shopList-spSmall .shopList-summary {
    font-size: 85%;
    line-height: 1.6;
    padding-top: 10px;
  }

}


/***********
module-searchNum
************/

.searchNum {
  padding-bottom: 20px;
}
.searchNum strong {
  color: #b04887;
  font-weight: normal;
}

@media screen and (max-width:834px) {

  .searchNum {
    font-size: 85%;
  }

}

/***********
module-pagination
************/

.pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding-top: 30px;
  padding-bottom: 30px;
}

.pagination:empty {
  display: none;
}

.pagination span,
.pagination a {
  display: inline-block;
  width: 2.5em;
  border: 1px solid #ddd;
  color: #4d5055;
  background-color: #fff;
  text-decoration: none;
  text-align: center;
  font-size: 116%;
  font-weight: normal;
  padding: 0.6em 0 0.55em;
  line-height: 1;
  margin: 2px 2px;
}
.pagination span,
.pagination a:hover {
  background-color: #e46e93;
  border-color: #e46e93;
  color: #fff;
}

@media screen and (max-width:834px) {

  .pagination span,
  .pagination a {
    font-size: 131%;
  }

}

/***********
module-shopHeader
************/

.shopHeader {
  margin-top: 30px;
  padding-bottom: 20px;
  position: relative;
}

.shopHeader-service {
  padding-bottom: 15px;
  font-size: 93%;
}

.shopHeader-title {
  font-size: 220%;
  line-height: 1.3;
}
.shopHeader-title a {
  color: #4d5055;
  text-decoration: none;
}
.shopHeader-review {
  font-size: 124%;
  padding-top: 5px;
}


.bookmark-btn {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-family: Hiragino Sans,Hiragino Kaku Gothic ProN,YuGothic,"Yu Gothic",Meiryo,sans-serif;
  background: none;
  border: 1px solid #e46e93;
  box-shadow: none;
  color: #e46e93;
  position: absolute;
  right: 0;
  top: 0;
  padding: 5px 15px;
  cursor: pointer;
}
.bookmark-btn i {
  display: inline-block;
  transform: scale(1.4);
  margin-right: 0.6em;
}
.bookmark-btn span {
  font-size: 124%;
  font-weight: bold;
}
.bookmark-btn.is-active {
  background-color: #e46e93;
  color: #fff;
}

.shopHeader-block {
  padding-top: 20px;
  padding-bottom: 20px;
  display: flex;
  justify-content: space-between;
}
.shopHeader-inner {
  flex: 1;
  padding-right: 30px;
}
.shopHeader-benefit {
  width: 400px;
}


.shopHeader-box {
  font-size: 116%;
  line-height: 1.8;
}
.shopHeader-tags {
  background-color: #edf0f4;
  padding: 15px;
}


.shopHeader-cv {
  display: flex;
  padding-top: 10px;
}
.shopHeader-cv li {
  padding-right: 2px;
}

.shopHeader-cv-btn {
  display: inline-block;
  width: 100%;
  text-align: center;
  font-family: 'Cinzel',"Hiragino Mincho ProN","游明朝",YuMincho,serif;
  padding: 0.5em 1em 0.5em 1em;
  font-size: 116%;
  color: #fff;
  background-color: #e46e93;
  letter-spacing: 0.08em;
  text-decoration: none !important;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}

.shopHeader-cv-btn::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #d0285d;
  position: absolute;
  left: 0;
  top: 0;
  transition: transform 0.2s ease;
  transform-origin: right top;
  transform: scaleX(0);
}
.shopHeader-cv-btn:hover::before {
  transform-origin: left top;
  transform: scaleX(1);
}
.shopHeader-cv-btn::after{
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #fff;
  opacity: 0.1;
  position: absolute;
  right: 50%;
  top: 0;
  transform: skewX(-60deg);
}
.shopHeader-cv-btn span{
  position: relative;
}
.shopHeader-cv-btn:not(.is-pc-noevent) span::after{
  display: inline-block;
  font-family: 'themify';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e649";
  font-size: 77%;
  opacity: 0.7;
  padding-left: 5px;
  margin-right: -15px;
}
.shopHeader-cv-btn i{
  display: inline-block;
  margin-right: 0.5em;
  transform: scale(1.2) translateY(0.1em);
}

@media screen and (max-width:834px) {

  .shopHeader {
    margin-top: 15px;
    padding-bottom: 10px;
  }

  .shopHeader-service {
    padding-bottom: 15px;
    font-size: 70%;
  }
  .shopHeader-title {
    font-size: 131%;
    padding-right: 45px;
  }
  .shopHeader-review {
    font-size: 108%;
    padding-top: 5px;
  }

  .bookmark-btn {
    border: none;
    position: absolute;
    right: 0;
    top: -5px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid #e46e93;
    padding: 0;
    padding-top: 6px;
  }
  .bookmark-btn i {
    font-size: 22px;
    transform: scale(1);
    margin-right:0;
  }
  .bookmark-btn span {
    display: none;
    font-size: 70%;
  }
  .bookmark-btn.is-active {
    background-color: #e46e93;
    color: #fff;
  }

  .shopHeader-block {
    padding-top: 15px;
    padding-bottom: 0;
    display: block;
  }
  .shopHeader-inner {
    padding-bottom: 0;
    padding-right: 0;
  }
  .shopHeader-benefit {
    width: 100%;
  }
  .shopHeader-box {
    font-size: 100%;
    line-height: 1.7;
  }
  .shopHeader-tags {
    display: none;
    font-size: 85%;
    padding: 10px 15px;
    margin-top: 10px;
  }

  .shopHeader-cv {
  }
  .shopHeader-cv li {
    width: 50%;
    padding: 1px;
    flex: 1;
  }

  .shopHeader-cv-btn {
    padding: 0.8em 0 0.8em 0;
    font-size: 100%;
    font-weight: bold;
    font-family: Hiragino Sans,Hiragino Kaku Gothic ProN,YuGothic,"Yu Gothic",Meiryo,sans-serif;
  }

}

/***********
module-serviceList
************/

.serviceList {
  display: flex;
  flex-wrap: wrap;
}
.serviceList li {
  display: inline-block;
  margin: 0.1em 0 0 0.1em;
  background-color: #b04887;
  color: #fff;
  letter-spacing: 0;
  padding: 0.4em 0.5em;
  line-height: 1;
}

/***********
module-shopCv
************/

.shopCv {
  display: flex;
  padding: 10px 10% 0;
  justify-content: center;
}
.shopCv-item {
  width: 50%;
  padding: 20px ;
}

.shopCv-btn {
  display: inline-block;
  width: 100%;
  text-align: center;
  font-family: 'Cinzel',"Hiragino Mincho ProN","游明朝",YuMincho,serif;
  padding: 20px 20px 20px 20px;
  font-size: 200%;
  color: #fff;
  background-color: #e46e93;
  letter-spacing: 0.08em;
  text-decoration: none !important;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}

.shopCv-btn::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #d0285d;
  position: absolute;
  left: 0;
  top: 0;
  transition: transform 0.2s ease;
  transform-origin: right top;
  transform: scaleX(0);
}
.shopCv-btn:hover::before {
  transform-origin: left top;
  transform: scaleX(1);
}
.shopCv-btn::after{
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #fff;
  opacity: 0.1;
  position: absolute;
  right: 50%;
  top: 0;
  transform: skewX(-60deg);
}

.shopCv-title {
  font-size: 131%;
  padding-bottom: 5px;
  text-align: center;
}

.shopCv-btn i{
  display: inline-block;
  transform: scale(1.3);
  margin-right: 0.6em;
}
.shopCv-btn span {
  position: relative;
  transition: all 0.2s ease;
}
.shopCv-btn:hover span {
  color: #fff;
}

@media screen and (max-width:834px) {

  .shopCv {
    display: flex;
    padding: 0px;
    margin-left: -2%;
  }
  .shopCv-item {
    width: 48%;
    padding: 0;
    margin-left: 2%;
  }

  .shopCv-btn {
    padding: 15px 5px 15px 5px;
    font-size: 116%;
    letter-spacing: 0;
  }

  .shopCv-btn i{
    display: inline-block;
    transform: scale(1.1);
    margin-right: 0.2em;
  }
  .shopCv-title {
    font-size: 93%;
    padding-bottom: 3px;
  }

}


/***********
module-shopPresent
************/

.shopPresent {
}
.shopPresent-img {
}

/***********
module-shopTag
************/

.shopTag{
  display: flex;
  flex-wrap: wrap;
  margin: 0 -1%;
}
.shopTag-icon{
  width: 49%;
  display: inline-block;
  padding: 0.5em 1.5em 0.5em 1em;
  text-align: center;
  background-color: #ddd;
  color: #fff;
  margin: 0.5%;
  font-weight: bold;
}
.shopTag-icon a{
  color: #fff;
  text-decoration: none;
}
.shopTag-icon a:hover{
  opacity: 0.7;
}
.shopTag-icon i{
  display: inline-block;
  margin-right: 0.8em;
  transform: scale(1.3);
}
.shopTag-icon.is-active{
  background-color: #90b45c;
}


@media screen and (max-width:834px) {

}

/***********
module-shopNavi
************/

.shopNavi{
  background-color: #4d5055;
  height: 66px;
}
.shopNavi-inner {
  width: 100%;
  height: 66px;
  background-color: #4d5055;
}

.shopNavi-list {
  display: flex;
  width: 100%;
}
.shopNavi-list li {
  flex: 1;
  position: relative;
}
.shopNavi-list li:not(:last-child)::after {
  content: "";
  display: block;
  width: 1px;
  height: 60%;
  position: absolute;
  right: 0;
  top: 20%;
  background-color: rgba(255, 255, 255, 0.2);
}
.shopNavi-list a {
  display: block;
  color: #fff;
  height: 66px;
  line-height: 66px;
  text-align: center;
  font-size: 108%;
  text-decoration: none;
  white-space: nowrap;
}
.shopNavi-list a:hover {
  background-color: #000;
}


.shopNavi.is-fix .shopNavi-inner{
  height: 50px;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 999;
}
.shopNavi.is-fix .shopNavi-list a {
  display: block;
  color: #fff;
  height: 50px;
  line-height: 50px;
  text-align: center;
  font-size: 108%;
  text-decoration: none;
  white-space: nowrap;
}

@media screen and (max-width:834px) {

}

/***********
module-mobileShopNavi
************/

.mobileShopNavi{
  letter-spacing: 0;
}
.mobileShopNavi-list {
  display: flex;
  margin: 15px -4.5%;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
.mobileShopNavi-list li {
  width: auto;
  flex: 1;
  background-color: #f0f0f0;
  position: relative;
  overflow: hidden;
}
.mobileShopNavi-list li::before{
  content: "";
  display: block;
  width: 300%;
  height: 100%;
  background-color: #fafafa;
  opacity: 1;
  position: absolute;
  right: 50%;
  top: 0;
  transform: skewX(-42deg);
}
.mobileShopNavi-list li:not(:last-child) {
  border-right: 1px solid #ccc;
}
.mobileShopNavi-list a {
  display: block;
  color: #4d5055;
  text-decoration: none;
  white-space: nowrap;
  text-align: center;
  border-radius: 6px;
  padding: 12px 0 8px;
}


.mobileShopNavi-list i {
  font-size: 162%;
  line-height: 1;
  position: relative;
}
.mobileShopNavi-list span {
  display: block;
  font-size: 77%;
  letter-spacing: 0;
  position: relative;
}

/***********
module-shopConcept
************/

.shopConcept{

}

@media screen and (max-width:834px) {

  .shopConcept{
    border-top: 1px solid #ddd;
  }

}


/***********
module-eventList
************/

.eventList {
}
.eventList li:not(:last-child) {
  margin-bottom: 30px;
}
.eventList li.is-empty{
  text-align: center;
  padding: 20px 0;
  font-size: 131%;
}
.eventList > li > a {
  display: block;
  background-color: #fff;
  padding: 30px 40px;
  color: #4d5055;
  text-decoration: none;
  position: relative;
}
.eventList-coloring li a{
  box-shadow: 0 0 0 5px #fff0f0,
    0 0 0 1px rgba(228, 110, 147, 0.5) inset;
}

.eventList-block {
  display: flex;
  justify-content: space-between;
}

.eventList-img {
  width: 30%;
}
.eventList-inner {
  width: 65%;
}

.eventList-area {
  position: absolute;
  right: 0;
  top: 0;
  width: 8em;
  padding: 0.3em 0;
  color: #fff;
  font-weight: bold;
  text-align: center;
  background-color: #e46e93;
  overflow: hidden;
}
.eventList-area::before{
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #fff;
  opacity: 0.1;
  position: absolute;
  right: 50%;
  top: 0;
  transform: skewX(-75deg);
}
.eventList-area span {
  position: relative;
}

.eventList-shop {
  font-size: 116%;
  font-weight: 600;
  color: #e46e93;
  padding-bottom: 5px;
}
.eventList-shop a {
  color: #e46e93;
  text-decoration: none;
}

.eventList-title {
  font-size: 170%;
  line-height: 1.3;
  font-weight: 600;
  color: #e46e93;
}
.eventList-shop a:hover,
.eventList-title:hover {
  text-decoration: underline;
}

.eventList-data {
  padding-top: 20px;
}

.eventList-data-item {
  display: flex;
  align-items: flex-start;
}
.eventList-data-item dt {
  width: 6em;
  text-align: center;
  background-color: #edf0f4;
  padding: 3px 0;
  margin-bottom: 5px;
  font-weight: bold;
}
.eventList-data-item dd {
  flex: 1;
  padding: 3px 0 3px 1em;
  font-weight: bold;
}
.eventList-data-item dd i {
  display: none;
}

.eventList-time {
  display: block;
  font-size: 93%;
  padding-top: 10px;
}
.eventList-summary {
  padding-top: 20px;
}

@media screen and (max-width:834px) {

  .eventList {
  }
  .eventList li:not(:last-child) {
    margin-bottom: 10px;
  }

  .eventList-coloring li:not(:last-child){
    margin-bottom: 20px;
  }
  .eventList li.is-empty{
    font-size: 108%;
  }
  .eventList > li > a {
    padding: 5px;
  }

  .eventList-block {
    letter-spacing: 0;
  }

  .eventList-area {
    right: auto;
    left: 5px;
    top: 5px;
    width: 5em;
    z-index: 9;
    padding: 0.3em 0;
    font-size: 77%;
  }

  .eventList-img {
    width: 40%;
  }
  .eventList-inner {
    width: 60%;
    padding-left: 10px;
  }


  .eventList-shop {
    font-size: 77%;
    line-height: 1.3;
    padding-bottom: 2px;
  }
  .eventList-shop a {
  }

  .eventList-title {
    font-size: 108%;
    line-height: 1.2;
  }

  .eventList-data {
    padding-top: 5px;
  }

  .eventList-data-item {
    font-size: 77%;
    line-height: 1.3;
  }
  .eventList-data-item dt {
    padding: 2px 0;
    margin-bottom: 3px;
    font-weight: normal;
    display: none;
  }
  .eventList-data-item dd {
    padding: 2px 0 2px 1.5em;
    font-weight: normal;
    position: relative;
  }
  .eventList-data-item dd i {
    display: inline-block;
    color: #e46e93;
    margin-right: 0.5em;
    transform: scale(1.2);
    position: absolute;
    left: 0;
  }

  .eventList-time {
    display: block;
    font-size: 93%;
    padding-top: 10px;
  }
  .eventList-summary {
    padding-top: 20px;
    display: none;
  }


}

/***********
module-shopItemTopSlider
************/

.shopItemTopSlider{
  display: flex;
  justify-content: center;
  padding-bottom: 30px;
}
.shopItemTopSlider li{
}
.shopItemTopSlider li a{
  display: block;
  width: 440px;
  color: #4d5055;
  text-decoration: none;
  padding: 0 0;
}
.shopItemTopSlider-img {
  margin-bottom: 15px;
}
.shopItemTopSlider-img img {
  width: 100%;
  height: 460px;
  object-fit: cover;
  object-position: center top;
}
.shopItemTopSlider-shop {
  text-align: center;
  font-size: 93%;
  font-weight: 600;
}
.shopItemTopSlider-title {
  font-size: 108%;
  font-weight: 600;
  text-align: center;
}

@media screen and (max-width:834px) {

  .shopItemTopSlider{
    padding-bottom: 10px;
  }
  .shopItemTopSlider li{
  }
  .shopItemTopSlider li a{
    width: 30vw;
    padding: 0 0;
  }

  .shopItemTopSlider-shop {
    font-size: 70%;
  }
  .shopItemTopSlider-title {
    font-size: 77%;
  }

  .shopItemTopSlider-img {
    margin-bottom: 10px;
  }
  .shopItemTopSlider-img img {
    width: 100%;
    height: 42vw;
    object-fit: cover;
    object-position: center top;
  }

}


/***********
module-shopItemSlider
************/

.shopItemSlider{
  display: flex;
  justify-content: center;
  padding-bottom: 30px;
}
.shopItemSlider li{
}
.shopItemSlider li a{
  display: block;
  width: 440px;
  color: #4d5055;
  text-decoration: none;
  padding: 0 0;
}
.shopItemSlider-img {
  margin-bottom: 15px;
}
.shopItemSlider-img img {
  width: 100%;
  height: 460px;
  object-fit: cover;
  object-position: center top;
}
.shopItemSlider-shop {
  text-align: center;
  font-size: 93%;
  font-weight: 600;
}
.shopItemSlider-title {
  font-size: 108%;
  font-weight: 600;
  text-align: center;
}

@media screen and (max-width:834px) {

  .shopItemSlider{
    padding-bottom: 10px;
  }
  .shopItemSlider li{
  }
  .shopItemSlider li a{
    width: 30vw;
    padding: 0 0;
  }

  .shopItemSlider-shop {
    font-size: 70%;
  }
  .shopItemSlider-title {
    font-size: 77%;
  }

  .shopItemSlider-img {
    margin-bottom: 10px;
  }
  .shopItemSlider-img img {
    width: 100%;
    height: 65vw;
    object-fit: cover;
    object-position: center top;
  }

}

/***********
module-planList
************/



.planList {
}
.planList li {
  display: block;
  background-color: #edf0f4;
  padding: 30px 40px;
  margin-bottom: 30px;
  color: #4d5055;
  text-decoration: none;
  position: relative;
}

.planList-block {
  display: flex;
  justify-content: space-between;
}
.planList-img {
  width: 30%;
}
.planList-img img {
}
.planList-inner {
  width: 65%;
}
.planList-title {
  width: 100%;
  line-height: 1.3;
  font-size: 154%;
  padding: 5px;
}

.planList-price {
  font-weight: 600;
  font-size: 250%;
  color: #e46e93;
}

.planList-tags{
  padding: 5px 0 15px;
}
.planList-tag {
  display: inline-block;
  padding: 5px 20px 10px;
  min-width: 320px;
  background-color: #e8d9e8;
  text-align: center;
  font-family: 'Hannari',"Hiragino Mincho ProN","游明朝",YuMincho,serif;
  font-size: 147%;
  color: #b04887;
}
.planList-tag i {
  display: inline-block;
  margin-right: 0.6em;
  transform: scale(1.3);
}
.planList-summary {
  line-height: 1.8;
  font-size: 108%;
}

@media screen and (max-width:834px) {

  .planList {
  }
  .planList li {
    padding: 5px ;
    margin-bottom: 20px;
  }

  .planList-block {
    display: block;
  }
  .planList-img {
    width: auto;
  }
  .planList-inner {
    width: auto;
    padding: 15px 10px;
  }
  .planList-title {
    font-size: 116%;
    padding: 0px;
    line-height: 1.3;
  }

  .planList-price {
    font-size: 154%;
  }

  .planList-tags{
    padding: 3px 0 10px;
  }
  .planList-tag {
    padding: 3px 20px 6px;
    min-width: initial;
    min-width: auto;
    font-size: 124%;
  }
  .planList-tag i {
    transform: scale(1.2);
  }
  .planList-summary {
    line-height: 1.7;
    font-size: 100%;
  }

}

/*
trigger
*/

.planList-trigger {
  margin-top: 30px;
}
.planList-trigger-btn {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 100%;
  box-shadow: none;
  border: 1px solid #ccc;
  background-color: #fff;
  padding: 15px 0;
  font-size: 154%;
  font-family: Hiragino Sans,Hiragino Kaku Gothic ProN,YuGothic,"Yu Gothic",Meiryo,sans-serif;
  cursor: pointer;
  transition: all 0.3s ease;
}
.planList-trigger-btn i {
  display: inline-block;
  margin-right: 1em;
  transform: scale(1.3);
}
.planList-trigger-btn:hover {
  background-color: #b04887;
  color: #fff;
}


.planList-container {
  display: none;
}

.planList-detail {
  padding-top: 30px;
}

@media screen and (max-width:834px) {

  .planList-trigger {
    margin-top: 0;
    padding: 0 10px 10px;
  }
  .planList-trigger-btn {
    padding: 10px 0;
    font-size: 131%;
  }
  .planList-trigger-btn i {
  }
  .planList-trigger-btn:hover {
    background-color: #fff;
    color: #4d5055;
  }

  .planList-detail {
    padding: 0 10px 20px;
  }

}



/***********
module-privilegeBnr
************/

.privilegeBnr{
  text-align: center;
}
.privilegeBnr::after {
  content: "";
  display: block;
  width: 1px;
  height: 50px;
  background-color: #4d5055;
  margin: 40px auto 0;
}
.privilegeBnr li:not(:last-child){
  margin-bottom: 40px;
}
.privilegeBnr-title {
  font-size: 131%;
  letter-spacing: 0.15em;
}
.privilegeBnr-num {
  display: inline-block;
  font-size: 700%;
  font-family: Times;
  font-weight: normal;
  transform: skewX(-10deg);
  line-height: 1;
  position: relative;
  z-index: 9;
}
.privilegeBnr-img {
  margin-top: -40px;
}


@media screen and (max-width:834px) {

  .privilegeBnr{
  }
  .privilegeBnr::after {
    height: 40px;
    margin: 20px auto 0;
  }
  .privilegeBnr li:not(:last-child){
    margin-bottom: 40px;
  }
  .privilegeBnr-title {
    font-size: 116%;
    letter-spacing: 0.1em;
  }
  .privilegeBnr-num {
    font-size: 400%;
  }
  .privilegeBnr-img {
    margin-top: -15px;
  }

}

/***********
module-shopCatalog
************/

.shopCatalog {
  display: flex;
  justify-content: space-between;
}
.shopCatalog-visual {
  width: 35%;
}
.shopCatalog-inner {
  width: 60%;
}
.shopCatalog-slider {
}


.shopCatalog-area {
  background-color: #fff;
  padding: 0 30px 0;
}
.shopCatalog-area-title {
  padding: 15px 0 20px;
  text-align: center;
  font-family: 'Hannari',"Hiragino Mincho ProN","游明朝",YuMincho,serif;
  font-size: 170%;
  font-weight: normal;
  color: #e46e93;
  border-bottom: 1px solid #e46e93;
}
.shopCatalog-area-title i {
  display: inline-block;
  margin-right: 0.5em;
  transform: scale(1.2) translateY(0.1em);
}
.shopCatalog-area-list {
  padding: 30px 0;
  display: flex;
  flex-wrap: wrap;
  line-height: 1.8;
  font-size: 116%;
}
.shopCatalog-area-list li:not(:last-child)::after {
  content: "/";
  padding: 0 0.2em
}


.shopCatalog-logo{
  text-align: center;
}


.shopCatalog-cv {
  display: flex;
  justify-content: center;
  padding-top: 20px;
  margin: 0 -1%;
}
.shopCatalog-cv li {
  flex: 1;
  width: 50%;
  padding: 0 1%;
}
.shopCatalog-cv a {
  display: block;
}


.shopCatalog-cv-btn {
  display: inline-block;
  width: 100%;
  text-align: center;
  font-family: 'Cinzel',"Hiragino Mincho ProN","游明朝",YuMincho,serif;
  padding: 20px 10px 20px 10px;
  font-size: 154%;
  color: #fff;
  background-color: #90b45c;
  letter-spacing: 0.08em;
  text-decoration: none !important;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}

.shopCatalog-cv-btn::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #5e7d32;
  position: absolute;
  left: 0;
  top: 0;
  transition: transform 0.2s ease;
  transform-origin: right top;
  transform: scaleX(0);
}
.shopCatalog-cv-btn:hover::before {
  transform-origin: left top;
  transform: scaleX(1);
}
.shopCatalog-cv-btn::after{
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #fff;
  opacity: 0.1;
  position: absolute;
  right: 50%;
  top: 0;
  transform: skewX(-60deg);
}

.shopCatalog-cv-btn i{
  display: inline-block;
  transform: scale(1.3);
  margin-right: 0.6em;
}
.shopCatalog-cv-btn span {
  position: relative;
  transition: all 0.2s ease;
}
.shopCatalog-cv-btn:hover span {
  color: #fff;
}

.shopCatalog-supported{
  text-align: right;
  padding-top: 10px;
  padding-bottom: 25px;
}
.shopCatalog-supported img {
  height: 2em;
}

@media screen and (max-width:834px) {

  .shopCatalog {
    display: block;
  }
  .shopCatalog-visual {
    width: auto;
    max-width: 240px;
    margin: 0 auto;
  }
  .shopCatalog-inner {
    width: auto;
  }
  .shopCatalog-slider {
  }

  .shopCatalog-area {
    padding: 0 15px 0;
  }
  .shopCatalog-area-title {
    padding: 10px 0 10px;
    font-size: 100%;
    font-weight: bold;
    font-family: Hiragino Sans,Hiragino Kaku Gothic ProN,YuGothic,"Yu Gothic",Meiryo,sans-serif;
  }
  .shopCatalog-area-title i {
  }
  .shopCatalog-area-list {
    padding: 15px 0;
    line-height: 1.5;
    font-size: 93%;
  }

  .shopCatalog-cv {
    display: block;
    padding-top: 10px;
    margin: 0 ;
  }
  .shopCatalog-cv li {
    width: auto;
    padding: 5px 0;
  }

  .shopCatalog-cv-btn {
    padding: 15px 10px 15px 10px;
    font-size: 131%;
  }



  .shopCatalog-supported{
    padding-top: 0px;
    padding-bottom: 20px;
    font-size: 85%;
  }
  .shopCatalog-supported img {
    height: 1.5em;
  }

}

/***********
module-shopAbout
************/

.shopAbout {
  display: flex;
  justify-content: space-between;
}

.shopAbout-inner {
  width: 48%;
}
.shopAbout-gallery {
  width: 48%;
}

.shopAbout-service {
  font-size: 85%;
  padding-bottom: 15px;
}

.shopAbout-title {
  font-size: 200%;
  line-height: 1.3;
  padding-bottom: 10px;
}
.shopAbout-text {
  font-weight: 600;
  line-height: 1.7;
  padding-bottom: 25px;
}


.shopAbout-table {
  line-height: 1.7;
  font-size: 108%;
}
.shopAbout-table tr {
  border-top: 1px solid #ddd;
}
.shopAbout-table th {
  color: #e46e93;
  line-height: 1.7;
  text-align: left;
  vertical-align: top;
  padding: 10px 0;
  width: 25%;
}
.shopAbout-table td {
  line-height: 1.7;
  text-align: left;
  vertical-align: top;
  padding: 10px 0;
}

@media screen and (max-width:834px) {

  .shopAbout {
    display: block;
  }

  .shopAbout-inner {
    width: auto;
  }
  .shopAbout-gallery {
    width: auto;
  }

  .shopAbout-service {
    font-size: 77%;
    padding-bottom: 10px;
  }

  .shopAbout-title {
    font-size: 131%;
    padding-bottom: 5px;
  }
  .shopAbout-text {
    font-size: 93%;
    font-weight: normal;
    line-height: 1.6;
    padding-bottom: 15px;
  }


  .shopAbout-table {
    line-height: 1.5;
    font-size: 93%;
  }
  .shopAbout-table tr {
  }
  .shopAbout-table th {
    line-height: 1.5;
    padding: 10px 0;
    width: 25%;
  }
  .shopAbout-table td {
    line-height: 1.5;
    padding: 10px 0;
  }

}

/***********
module-shopMap
************/

.shopMap {
  padding-top: 40px;
}
.shopMap iframe {
  width: 100%;
  height: 500px;
}

@media screen and (max-width:834px) {

  .shopMap {
    padding-top: 20px;
  }
  .shopMap iframe {
    width: 100%;
    height: 400px;
  }
}

/***********
module-shopFinish
************/

.shopFinish{
  padding: 40px 0 80px;
}
.shopFinish::before {
  content: "";
  display: block;
  width: 1px;
  height: 50px;
  background-color: #4d5055;
  margin: 0 auto 0;
}
.shopFinish-heading{
  font-family: 'Hannari',"Hiragino Mincho ProN","游明朝",YuMincho,serif;
  font-weight: normal;
  font-size: 250%;
  text-align: center;
  line-height: 1.3;
  margin-top: -20px;
  margin-bottom: -20px;
}

@media screen and (max-width:834px) {

  .shopFinish{
    padding: 20px 0 20px;
  }

  .shopFinish-heading{
    font-size: 162%;
    margin-top: 00px;
    margin-bottom: 0;
  }

}

/***********
module-newsList
************/

.newsList {
  border-top: 1px dashed #ddd;
}
.newsList li {
  border-bottom: 1px dashed #ddd;
}
.newsList a {
  display: flex;
  align-items: flex-start;
  padding: 25px 30px 25px 10px;
  font-size: 124%;
  color: #4d5055;
  text-decoration: none;
  position: relative;
}
.newsList a::after {
  font-family: 'themify';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e649";
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top: -0.5em;
  font-size: 14px;
  opacity: 0.7;
}

.newsList-time {
  color: #90b45c;
  display: inline-block;
  width: 7em;
}
.newsList-cat {
  display: inline-block;
  width: 12em;
  background-color: #90b45c;
  color: #fff;
  padding: 1px 10px;
  font-size: 85%;
  text-align: center;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.newsList-title {
  flex: 1;
  padding-left: 30px;
}
.newsList-title:hover {
  color: #90b45c;
  text-decoration: underline;
}

@media screen and (max-width:834px) {

  .newsList a {
    display: block;
    padding: 15px 20px 15px 0px;
    font-size: 100%;
  }
  .newsList a::after {
    right: 0px;
    margin-top: -0.5em;
    font-size: 10px;
  }

  .newsList-time {
    width: auto;
    padding-right: 1em;
    font-size: 85%;
  }
  .newsList-cat {
    font-size: 85%;
    width: auto;
    padding: 0 0.8em;
    font-size: 85%;
    overflow: visible;
    white-space: pre-wrap;
    text-overflow:clip;
  }
  .newsList-title {
    padding-left: 0;
    font-size: 108%;
    line-height: 1.3;
    padding-top: 10px;
  }

}


/***********
module-topicsList
************/

.topicsList{
}

.topicsList li:not(:last-child) {
  margin-bottom: 30px;
}
.topicsList li.is-empty{
  text-align: center;
  padding: 20px 0;
  font-size: 131%;
}
.topicsList > li > a {
  display: block;
  background-color: #fff;
  padding: 30px 40px;
  color: #4d5055;
  text-decoration: none;
  position: relative;
  box-shadow: 0 0 25px rgba(0, 0, 0, 0.05);
}

.topicsList-block {
  display: flex;
  justify-content: space-between;
}

.topicsList-img {
  width: 30%;
}
.topicsList-inner {
  width: 65%;
}


.topicsList-time {
  color: #90b45c;
  display: inline-block;
  font-size: 116%;
  margin-right: 1em;
}
.topicsList-cat {
  display: inline-block;
  background-color: #90b45c;
  color: #fff;
  padding: 0.1em 1em;
  font-size: 108%;
  text-align: center;
}
.topicsList-title {
  padding-top: 10px;
  font-size: 154%;
  font-weight: bold;
  line-height: 1.3;
}
.topicsList-title:hover {
  color: #90b45c;
  text-decoration: underline;
}

.topicsList-summary{
  padding-top: 15px;
  font-size: 108%;
  line-height: 1.7;
}

@media screen and (max-width:834px) {

  .topicsList{
  }

  .topicsList li:not(:last-child) {
    margin-bottom: 15px;
  }
  .topicsList > li > a {
    padding: 5px;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.05);
  }

  .topicsList-block {
  }

  .topicsList-img {
    width: 35%;
  }
  .topicsList-inner {
    width: 65%;
    padding-left: 10px;
  }


  .topicsList-time {
    font-size: 77%;
  }
  .topicsList-cat {
    font-size: 77%;
    padding: 0.1em 0.5em;
  }
  .topicsList-title {
    padding-top: 5px;
    font-size: 116%;
  }

  .topicsList-summary{
    display: none;
    padding-top: 10px;
    font-size: 77%;
    line-height: 1.5;
  }


}


/***********
module-article
************/

.article {
  padding-bottom: 30px;
}
.article-heading {
  border-bottom: 1px solid #ccc;
  padding-bottom: 15px;
  margin-bottom: 30px;
}
.article-time {
  display: inline-block;
  font-size: 124%;
  font-weight: 600;
  margin-right: 1em;
  color: #90b45c;
}
.article-cat {
  font-size: 116%;
  font-weight: 600;
  padding: 0.2em 1em;
  background-color: #90b45c;
  color: #fff;
}
.article-title {
  font-size: 250%;
  padding-top: 10px;
  line-height: 1.3;
}


.article-data {
  padding-bottom: 30px;
}
.article-data:empty {
  display: none;
}

.article-data-item {
  display: flex;
  align-items: flex-start;
  font-size: 124%;
}
.article-data-item dt {
  width: 6em;
  text-align: center;
  background-color: #edf0f4;
  padding: 3px 0;
  margin-bottom: 10px;
  font-weight: bold;
}
.article-data-item dd {
  flex: 1;
  padding: 3px 0 3px 1em;
  font-weight: bold;
}


.article-contact {
  margin-top: 0;
  background-color: #e8d9e8;
  padding: 50px 60px;
}
.article-contact-heading {
  font-family: 'Hannari',"Hiragino Mincho ProN","游明朝",YuMincho,serif;
  font-weight: normal;
  text-align: center;
  font-size: 250%;
  padding-bottom: 20px;
  line-height: 1.3;
}

.article-contact-inner {
  background-color: #fff;
  padding: 30px;
}

@media screen and (max-width:834px) {

  .article {
    padding-bottom: 30px;
  }
  .article-heading {
    padding-bottom: 15px;
    margin-bottom: 20px;
  }
  .article-time {
    font-size: 85%;
  }
  .article-cat {
    font-size: 85%;
  }
  .article-title {
    font-size: 131%;
  }

  .article-data {
    padding-bottom: 20px;
  }


  .article-data-item {
    font-size: 100%;
  }
  .article-data-item dt {
    margin-bottom: 5px;
  }
  .article-data-item dd {
  }

  .article-contact {
    padding: 10px 10px;
  }
  .article-contact-heading {
    font-size: 170%;
    padding: 10px 0;
  }

  .article-contact-inner {
    padding: 20px 5%;
  }

}

/***********
module-itemList
************/

.itemList {
  display: flex;
  flex-wrap: wrap;
  margin-left: -1%;
}
.itemList li {
  width: 24%;
  margin-left: 1%;
  margin-bottom: 50px;
}
.itemList a {
  display: block;
  color: #b04887;
  text-decoration: none;
}

.itemList-img {
}
.itemList-img.zoomHover{
}
.itemList-img img {
}
.itemList-title {
  text-align: center;
  font-size: 116%;
  font-weight: bold;
  padding-top: 5px;
}

@media screen and (max-width:834px) {

  .itemList {
    margin-left: -1%;
  }
  .itemList li {
    width: 49%;
    margin-left: 1%;
    margin-bottom: 20px;
  }
  .itemList a {
  }


  .itemList-img img {
    width: 100%;
    height: 70vw;
    object-fit: cover;
    object-position: center top;
  }
  .itemList-title {
    font-size: 93%;
    padding-top: 5px;
    line-height: 1.3;
  }

}

/***********
module-galleryList
************/


.galleryList {
  display: flex;
  flex-wrap: wrap;
  margin-left: -1%;
}
.galleryList li {
  width: 24%;
  margin-left: 1%;
  margin-bottom: 50px;
}
.galleryList a {
  display: block;
  color: #e46e93;
  text-decoration: none;
  position: relative;
}

.galleryList-img {
}
.galleryList-img.zoomHover{
}
.galleryList-img img {
  width: 100%;
  height: 240px;
  object-fit: cover;
}


@media all and (-ms-high-contrast:none) {
/* meiryo only IE */
  .galleryList-img img {
    width: 100%;
    height: auto;
  }
}


.galleryList-inner {
  position: relative;
}

.galleryList-cat {
  position: relative;
  padding: 0.3em 0;
  color: #fff;
  font-weight: bold;
  text-align: center;
  background-color: #4d5055;
  overflow: hidden;
  margin-bottom: 15px;
}
.galleryList-cat::before{
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #fff;
  opacity: 0.1;
  position: absolute;
  right: 50%;
  top: 0;
  transform: skewX(-75deg);
}
.galleryList-cat span {
  position: relative;
}

.galleryList-shop {
  font-size: 100%;
  font-weight: bold;
  padding-right: 7em;
}
.galleryList-title {
  font-size: 154%;
  font-weight: bold;
  padding-top: 5px;
}
.galleryList-title:hover {
  text-decoration: underline;
}

@media screen and (max-width:834px) {

  .galleryList {
    margin-left: -1%;
  }
  .galleryList li {
    width: 49%;
    margin-left: 1%;
    margin-bottom: 20px;
  }
  .galleryList a {
  }

  .galleryList-inner {
    margin-top: 0;
    padding-top: 0;
  }

  .galleryList-img img {
    height: 36vmin;
  }



  .galleryList-cat {
    position: relative;
    right: auto;
    top: auto;
    width: 100%;
    padding: 0.1em 0;
    margin-bottom: 0;
    font-size: 77%;
  }
  .galleryList-cat::before{
    content: "";
    display: block;
    width: 400%;
    height: 100%;
    transform: skewX(-85deg);
  }
  .galleryList-cat span {
    position: relative;
  }

  .galleryList-shop {
    font-size: 77%;
    padding-right: 0;
    padding-top: 5px;
  }
  .galleryList-title {
    font-size: 100%;
    padding-top: 2px;
    line-height: 1.3;
  }

}

/***********
module-item
************/

.item {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
}
.item-img {
  width: 35%;
}
.item-img-large {
  width: 47.5%;
}

.item-inner {
  width: 60%;
}
.item-inner-large {
  width: 47.5%;
}

.item-title {
  background: url(../../img/line01.png) repeat-x left bottom 5px;
  background-color: #fff0f0;
  border-radius: 8px;
  padding: 12px 20px;
  margin-bottom: 25px;
  font-size: 154%;
  color: #e46e93;
}

.item-data {
  padding-bottom: 30px;
}
.item-data:empty {
  display: none;
}

.item-data-item {
  display: flex;
  align-items: flex-start;
  font-size: 116%;
  letter-spacing: 0;
}
.item-data-item:not(:last-child) {
  border-bottom: 1px dashed #ddd;
  padding-bottom: 10px;
  margin-bottom: 10px;
}
.item-data-item dt {
  width: 8em;
  text-align: center;
  background-color: #fff0f0;
  padding: 3px 0;
  font-weight: bold;
}
.item-data-item dd {
  flex: 1;
  padding: 3px 0 3px 1em;
}

@media screen and (max-width:834px) {

  .item {
    display: block;
  }
  .item-img {
    width: auto;
    text-align: center;
    padding-bottom: 20px;
  }
  .item-inner {
    width: auto;
  }

  .item-title {
    border-radius: 5px;
    padding: 12px 15px;
    margin-bottom: 20px;
    font-size: 124%;
  }

  .item-data {
    padding-bottom: 20px;
  }

  .item-data-item {
    font-size: 93%;
  }
  .item-data-item:not(:last-child) {
    border-bottom: 1px dashed #ddd;
    padding-bottom: 10px;
    margin-bottom: 10px;
  }
  .item-data-item dt {
  }

}

/***********
module-shopFix
************/

.shopFix{
  width: 100%;
  position: fixed;
  left: 0;
  bottom: 0;
  background-color: #4d5055;
  z-index: 999;
}

.shopFix-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 1px 0 1px 1px;
  display: flex;
}

.shopFix-btn{
  display: block;
  flex: 1;
  margin-right: 1px;
  padding: 5px 0 2px;
  color: #fff;
  text-decoration: none;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.shopFix-btn::before{
  content: "";
  display: block;
  width: 300%;
  height: 100%;
  background-color: #fff;
  opacity: 0.1;
  position: absolute;
  right: 50%;
  top: 0;
  transform: skewX(-82deg);
}
.shopFix-btn span {
  display: block;
  font-size: 12px;
  padding-top: 3px;
  position: relative;
}
.shopFix-btn i {
  display: block;
  font-size: 20px;
  position: relative;
}
.shopFix-btn01 {
  background-color: #90b45c;
}
.shopFix-btn02 {
  background-color: #e46e93;
}

@media screen and (min-width:835px) {

  .shopFix{
    display: none
  }

}

@media screen and (max-width:834px) {

  .shopFix-btn::before{
    transform: skewX(-72deg);
  }

}

/***********
module-reviewList
************/

.reviewList {
  margin-left: -1%;
}
.reviewList li {
  width: 49%;
  margin-left: 1%;
  margin-bottom: 1%;
}

.reviewList-block {
  background-color: #fff0f0;
  padding: 5px;
}
.reviewList-inner {
  background-color: #fff;
  padding: 15px 20px;
  border: 1px solid rgba(228, 110, 147, 0.3);
}

.reviewList-title {
  font-size: 131%;
  line-height: 1.3;
  padding: 5px 0 15px;
}
.reviewList-title a {
}

.reviewList-score {
  display: flex;
  padding-bottom: 5px;
}
.reviewList-score-item {
  font-size: 108%;
  width: 6em;
  margin-right: 5px;
}
.reviewList-score-item dt {
  font-size: 85%;
  text-align: center;
  background-color: #fdf1f1;
  color: #e46e93;
  padding: 2px 0;
  letter-spacing: 0.05em;
}
.reviewList-score-item dd {
  padding: 5px 0;
  text-align: center;
  letter-spacing: 0.15em;
}


.reviewList-text {
  font-size: 108%;
  line-height: 1.7;
}

.reviewList-data {
  font-size: 85%;
  padding-top: 10px;
  opacity: 0.7;
}
.reviewList-data span {
  display: inline-block;
  padding-right: 1em;
}

@media screen and (max-width:834px) {

  .reviewList {
    margin-left: 0;
  }
  .reviewList li {
    width: 100%;
    margin-left: 0;
    margin-bottom: 10px;
  }

  .reviewList-block {
  }
  .reviewList-inner {
    padding: 12px 15px;
  }

  .reviewList-title {
    font-size: 116%;
    padding: 5px 0 15px;
  }
  .reviewList-title a {
  }

  .reviewList-score {
    padding-bottom: 10px;
  }
  .reviewList-score-item {
    font-size: 100%;
    width: 5em;
    margin-right: 5px;
  }
  .reviewList-score-item dt {
    font-size: 85%;
    letter-spacing: 0.0em;
  }
  .reviewList-score-item dd {
    padding: 5px 0;
    letter-spacing: 0.0em;
    font-size: 85%;
  }


  .reviewList-text {
    font-size: 100%;
    line-height: 1.7;
  }

  .reviewList-data {
    font-size: 77%;
  }
  .reviewList-data span {
    display: inline-block;
    padding-right: 1em;
  }

}

/***********
module-areaSearch
************/

.areaSearch{
  background-color: #fff;
  padding: 30px 40px;
  margin-bottom: 60px;
  font-size: 108%;
}

.areaSearch-item {
  display: flex;
  align-items: flex-start;
}
.areaSearch-item:not(:last-child) {
  padding-bottom: 5px;
}
.areaSearch-item > dt {
  width: 10em;
  background-color: #edf0f4;
  padding: 4px 0;
  text-align: center;
  font-weight: bold;
}
.areaSearch-item > dd {
  flex: 1;
  padding: 4px 0 4px 20px;
}

.areaSearch-list {
  display: flex;
  flex-wrap: wrap;
}
.areaSearch-list li:not(:last-child)::after {
  content: "/";
  padding: 0 0.5em;
  opacity: 0.5;
}
.areaSearch-list a {
}

.areaSearch-block{
}
.areaSearch-trigger-btn{
  border: 1px solid #ddd;
  padding: 10px 0;
  font-size: 124%;
  text-align: center;
}

.areaSearch-trigger-btn {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 100%;
  box-shadow: none;
  border: 1px solid #ccc;
  background-color: #fff;
  padding: 15px 0;
  font-size: 108%;
  font-family: Hiragino Sans,Hiragino Kaku Gothic ProN,YuGothic,"Yu Gothic",Meiryo,sans-serif;
  cursor: pointer;
  transition: all 0.3s ease;
}
.areaSearch-trigger-btn i {
  display: inline-block;
  margin-right: 1em;
  transform: scale(1.3);
}

@media screen and (max-width:834px) {

  .areaSearch{
    padding: 0;
    margin-bottom: 30px;
    font-size: 93%;
    letter-spacing: 0;
    line-height: 1.8;
  }

  .areaSearch-item {
  }
  .areaSearch-item:not(:last-child) {
  }
  .areaSearch-item > dt {
    width: 6em;
    padding: 2px 0;
  }
  .areaSearch-item > dd {
    padding: 2px 0 2px 10px;
  }

  .areaSearch-list {
  }
  .areaSearch-list li:not(:last-child)::after {
    content: "/";
    padding: 0 0.3em;
  }
  .areaSearch-list a {
  }

  .areaSearch-block{
    display: none;
    padding: 20px 15px;
  }

}


/***********
module-note
************/

.note {
}
.note-box:not(:last-child) {
  padding-bottom: 30px;
}
.note-title {
  font-size: 131%;
  padding-bottom: 5px;
}
.note-text {
  font-size: 108%;
  line-height: 1.8;
}


.note-list {
}
.note-list li {
  font-size: 108%;
  line-height: 1.8;
  padding-left: 1em;
  position: relative;
  padding-bottom: 0.5em;
}
.note-list li:before {
  content: "・";
  position: absolute;
  left: 0;
}

.note-list-num {
  list-style: decimal;
  margin-left: 1.8em;
}
.note-list-num li {
  font-size: 108%;
  line-height: 1.8;
  position: relative;
  padding-bottom: 0.5em;
}

@media screen and (max-width:834px) {

  .note {
    font-size: 85%;
  }
  .note-text {
    font-size: 108%;
    line-height: 1.6;
  }

  .note-list li {
    font-size: 108%;
    line-height: 1.6;
  }

  .note-list-num li {
    font-size: 108%;
    line-height: 1.6;
  }

}

/***********
module-catalogSample
************/

.catalogSample{
  display: flex;
  flex-wrap: wrap;
}
.catalogSample li{
  width: 80px;
  padding: 0 2px 2px 0;
}

@media screen and (max-width:834px) {

  .catalogSample{
  }
  .catalogSample li{
    width: 60px;
  }
}

/***********
module-catList
************/


.catList {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding-bottom: 40px;
}
.catList a {
  display: block;
  background-color: #fff;
  width: 180px;
  padding: 18px 5px 25px 5px;
  margin: 0 5px 10px;
  color: #4d5055;
  font-size: 124%;
  font-weight: 600;
  text-align: center;
  text-decoration: none;
  box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.15);
  position: relative;
}
.catList a:hover,
.catList a.is-active {
  background-color: #e46e93;
  color: #fff;
}
.catList a::after {
  font-family: 'themify';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\e64b";
  position: absolute;
  left: 50%;
  bottom: 5px;
  font-size: 12px;
  margin-left: -0.5em;
  opacity: 0.5;
}

@media screen and (max-width:834px) {

  .catList {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding-bottom: 20px;
  }
  .catList a {
    width: auto;
    min-width: 6em;
    padding: 10px 2px 18px;
    margin: 0 0 2% 2%;
    color: #4d5055;
    font-size: 93%;
  }
  .catList a:hover,
  .catList a.is-active {
    background-color: #e46e93;
    color: #fff;
  }
  .catList a::after {
    bottom: 3px;
    font-size: 10px;
  }

}


/***********
module-registrationPlan
************/

.registrationPlan{
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #ccc;
  border-radius: 5px;
  padding: 0.5em 2em;
  background: none;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1) inset;
  font-family: Hiragino Sans,Hiragino Kaku Gothic ProN,YuGothic,"Yu Gothic",Meiryo,sans-serif;
  font-weight: bold;
  color: #4d5055;
  cursor: pointer;
  transition: all 0.2s ease;
}
.registrationPlan:hover{
  background-color: #e46e93;
  border-color: #e46e93;
  color: #fff;
}

@media screen and (max-width:834px) {

  .registrationPlan{
    padding: 0.5em 1em;
    font-size: 93%;
  }
  .registrationPlan:hover{
    background-color: inherit;
    border-color: inherit;
    color: inherit;
  }

}

/***********
module-planTable
************/

.planTable{
  table-layout: fixed;
  text-align: center;
}
.planTable thead tr th:nth-child(1){
  width: 30%;
}
.planTable tbody tr:nth-child(odd){
  background-color: #f6f6f6;
}
.planTable tbody tr:nth-child(odd){
}
.planTable tbody th{
  text-align: left;
  padding: 15px 0 15px 20px;
  font-size: 14px;
}
.planTable tbody td{
  border-left: 1px solid #eee;
  padding: 15px 0;
}

.planTable .icon-circle {
  display: inline-block;
  width: 18px;
  height: 18px;
  border: 3px solid #000;
  border-radius: 50%;
}


.planTable-heading{
  background-color: #000;
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  padding: 15px 0;
  margin: 1px 1px 5px 0;
}

.planTable-price-free{
}
.planTable-price{
  font-size: 16px;
  font-weight: bold;
}
.planTable-price-num{
  font-size: 154%;
  padding-right: 0.1em;
}

.planTable-rate {
  font-size: 16px;
  font-weight: bold;
}
.planTable-rate:not(:last-child) {
}


.planTable-color-free{
  color: #90b45c;
}
.planTable-color-standard{
  color: #e46e93;
}
.planTable .icon-circle-free {
  border-color: #90b45c;
}
.planTable .icon-circle-standard {
  border-color: #e46e93;
}
.planTable-heading.planTable-heading-free {
  background-color: #90b45c;
}
.planTable-heading.planTable-heading-standard {
  background-color: #e46e93;
}


@media screen and (max-width:834px) {

  .planTable{
  }
  .planTable thead tr th:nth-child(1){
    width: 30%;
  }
  .planTable tbody tr:nth-child(odd){
  }
  .planTable tbody tr:nth-child(odd){
  }
  .planTable tbody th{
    padding: 10px 5px 10px 5px;
    font-size: 11px;
  }
  .planTable tbody td{
    padding: 5px 0;
  }

  .planTable .icon-circle {
    width: 12px;
    height: 12px;
    border-width: 2px
  }


  .planTable-heading{
    font-size: 13px;
    letter-spacing: 0;
    padding: 12px 0;
    line-height: 1.2;
  }

  .planTable-price{
    font-size: 11px;
  }
  .planTable-price-num{
    font-size: 131%;
    padding-right: 0.1em;
  }

  .planTable-rate {
    font-size: 11px;
  }


}


/***********
module-post
************/


.post {
  font-size: 1.16rem;
  line-height: 2;
}

.post img.mce-img{
}

.post p:not([class]) {
  font-size: 1.16rem;
  line-height: 2;
  padding-bottom: 1em;
}

.post h1:not([class])  {
  font-size: 2rem;
  margin: 0 0 20px 0;
  position: relative;
  padding: 0.25em 1em;
  border-top: solid 2px black;
  border-bottom: solid 2px black;
}

.post h2:not([class]) {
  font-size: 2rem;
  margin: 40px 0 20px 0;
  border-left: 5px solid #222;
  padding: 0 0 0 20px;
  line-height: 1.3;
}

.post h3:not([class]) {
  font-size: 1.7rem;
  background-color: rgba(0, 0, 0, 0.05);
  padding: 6px 20px;
  border-radius: 8px;
  margin: 30px 0 20px 0;
}

.post h4:not([class]) {
  font-size: 1.54rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  padding-bottom: 8px;
  margin: 30px 0 20px 0;
}

.post h5:not([class]) {
  font-size: 1.39rem;
  padding: 20px 0 15px 0;
}

.post h6:not([class]) {
  font-size: 1.31rem;
  padding: 15px 0 8px 0;
}

.post img:not([class]) {
  padding-bottom: 20px;
}

.post blockquote:not([class]) {
  background-color: rgba(0, 0, 0, 0.05);
  border: 1px solid rgba(0, 0, 0, 0.2);
  padding: 25px 3%;
  border-radius: 15px;
  margin: 30px 0;
}

.post table:not([class]) {
  border: 1px solid rgba(0, 0, 0, 0.2);
}

.post table:not([class]) thead th,
.post table:not([class]) thead td {
  border: 1px solid rgba(0, 0, 0, 0.2);
  font-size: 1.24rem;
  padding: 12px 3%;
  text-align: center;
  font-weight: 500;
  line-height: 1.7;
  background-color: rgba(0, 0, 0, 0.8);
  color: #fff;
}

.post table:not([class]) tbody th {
  border: 1px solid rgba(0, 0, 0, 0.2);
  font-size: 1.24rem;
  padding: 12px 3%;
  text-align: left;
  vertical-align: top;
  line-height: 1.7;
  background-color: rgba(0, 0, 0, 0.05);
}

.post table:not([class]) tbody td {
  border: 1px solid rgba(0, 0, 0, 0.2);
  font-size: 1.24rem;
  padding: 12px 3%;
  text-align: left;
  vertical-align: top;
  font-weight: 500;
  line-height: 1.7;
  background-color: #fff;
}



.post ul:not([class]){
  font-size: 1.24rem;
  line-height: 1.8;
  list-style: disc;
  margin-left: 1.5em;
  padding: 20px 0;
}
.post ol:not([class]){
  font-size: 1.24rem;
  line-height: 1.8;
  list-style: decimal;
  margin-left: 1.5em;
  padding: 20px 0;
}


@media screen and (max-width:834px) {

  .post {
    font-size: 1.16rem;
    line-height: 1.5;
    padding-bottom: 10px;
  }

  .post p:not([class]) {
    font-size: 1.16rem;
    line-height: 1.5;
  }

  .post h1:not([class]) {
    font-size: 1.31rem;
  }

  .post h2:not([class]) {
    font-size: 1.31rem;
    margin: 30px 0 20px 0;
    border-left: 3px solid #222;
    padding: 0 0 0 10px;
    line-height: 1.3;
  }

  .post h3:not([class]) {
    font-size: 1.24rem;
    padding: 10px 10px;
    margin: 20px 0 14px 0;
    line-height: 1.3;
  }

  .post h4:not([class]) {
    font-size: 1.24rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
    margin: 20px 0 10px 0;
    line-height: 1.3;
  }

  .post h5:not([class]) {
    font-size: 1.16rem;
    padding: 20px 0 10px 0;
  }

  .post h6:not([class]) {
    font-size: 1.16rem;
    padding: 15px 0 8px 0;
  }

  .post img:not([class]) {
    padding-bottom: 10px;
  }

  .post blockquote:not([class]) {
    padding: 15px 3%;
    margin: 20px 0;
  }

  .post table:not([class]) {
    border: 1px solid rgba(0, 0, 0, 0.2);
  }

  .post table:not([class]) thead th,
  .post table:not([class]) thead td {
    font-size: 0.93rem;
    padding: 5px 2%;
    line-height: 1.5;
  }

  .post table:not([class]) tbody th {
    font-size: 0.93rem;
    padding: 5px 2%;
    line-height: 1.5;
  }

  .post table:not([class]) tbody td {
    font-size: 0.93rem;
    padding: 5px 2%;
    line-height: 1.5;
  }


  .post ul:not([class]){
    font-size: 1.16rem;
    line-height: 1.5;
    padding: 10px 0;
  }
  .post ol:not([class]){
    font-size: 1.16rem;
    line-height: 1.5;
    padding: 10px 0;
  }


}

/***********
module-prefChoice
************/

@media screen and (min-width:835px) {

  .prefChoice{
    display: flex;
    position: relative;
    z-index: 9;
    padding-bottom: 60px;
  }
  .prefChoice-inner{
    /*width: 16.66666%;*/
    width: 50%;
  }
  .prefChoice-list{
    display: flex;
  }
  .prefChoice-list > li{
    flex: 1;
    padding-right: 1px;
    position: relative;
  }

  .prefChoice-trigger{
    display: block;
    background-color: #e46e93;
    padding: 15px 0;
    color: #fff;
    font-size: 124%;
    font-weight: bold;
    text-align: center;
    position: relative;
  }
  .prefChoice-trigger::after{
    content: "";
    display: block;
    width: 5px;
    height: 5px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    position: absolute;
    right: 10px;
    top: 50%;
    margin-top: -6px;
    transform: rotate(135deg);
    opacity: 0.5;
  }
  .prefChoice-box{
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease;
  }


  .prefChoice-list li:hover .prefChoice-box{
    visibility: visible;
    opacity: 1;
  }

  .prefChoice-box{
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    padding-top: 1px;
    background-color: rgba(228, 110, 147, 0.8);
  }
  .prefChoice-box ul {
  }
  .prefChoice-box ul li{
    padding-bottom: 1px;
  }
  .prefChoice-box ul a {
    display: block;
    background-color: #e46e93;
    padding: 12px 0;
    color: #fff;
    font-size: 116%;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    position: relative;
  }
  .prefChoice-box ul a:hover {
    text-decoration: underline;
  }

}

@media screen and (max-width:834px) {

  .prefChoice{
    padding-bottom: 30px;
  }

  .prefChoice-block{
  }
  .prefChoice-list {
    display: flex;
    flex-wrap: wrap;
    margin-left: -1vw;
  }
  .prefChoice-list > li {
    width: 25%;
    padding-left: 1vw;
    padding-bottom: 1vw;
  }
  .prefChoice-list > li > span:hover {
    text-decoration: underline;
  }
  .prefChoice-trigger{
    position: relative;
    display: block;
    padding: 1em 0 1.5em 0;
    background-color: #fff;
    font-size: 93%;
    text-align: center;
    font-weight: 600;
    border: 1px solid #ddd;
    cursor: pointer;
    z-index: 10;
    white-space: nowrap;
  }
  .prefChoice-trigger::after {
    font-family: 'themify';
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\e64b";
    position: absolute;
    left: 50%;
    bottom: 5px;
    margin-left: -0.5em;
    font-size: 8px;
    opacity: 0.5;
  }

  .prefChoice-list > li.is-active{
    z-index: 99;
  }

  .prefChoice-box{
    display: none;
    width: 100vw;
    padding: 5px 4vw;
    box-sizing: border-box;
    z-index: 9;
  }
  .prefChoice-list > li:nth-child(1n) .prefChoice-box{
    transform: translateX(-4vw);
  }
  .prefChoice-list > li:nth-child(2n) .prefChoice-box{
    transform: translateX(-27vw);
  }
  .prefChoice-list > li:nth-child(3n) .prefChoice-box{
    transform: translateX(-50vw);
  }
  .prefChoice-list > li:nth-child(4n) .prefChoice-box{
    transform: translateX(-73.5vw);
  }


  .prefChoice-list ul {
    display: flex;
    flex-wrap: wrap;
    margin-left: -1%;
  }
  .prefChoice-list ul li {
    width: 24%;
    margin-left: 1%;
    margin-bottom: 1%;
    position: relative;
    background-color: #e46e93;
    border-radius: 8px;
    overflow: hidden;
  }
  .prefChoice-list ul li::before{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: #fff;
    opacity: 0.1;
    position: absolute;
    right: 50%;
    top: 0;
    transform: skewX(-60deg);
    pointer-events: none;
  }
  .prefChoice-list ul li a {
    display: block;
    text-align: center;
    color: #fff;
    padding: 12px 0;
    border-radius: 8px;
    font-weight: bold;
    text-decoration: none;
  }

}


/***********
module-xxxxx
************/

/***********
module-xxxxx
************/

/***********
module-xxxxx
************/



