@charset "UTF-8";

/*notes*/
#contents .notes {
  font-size: 14px !important;
  padding: 6px 0 0 1em !important;
  text-indent: -1em;
  font-family: YakuHanJP, "Lato", 'Noto Sans JP', "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", Meiryo, "MS PGothic", Osaka, sans-serif !important;
  line-height: 1.6 !important;
}
#contents .notes.notes-2 {
  padding-left: 2em !important;
  text-indent: -2em;
}
#contents .notes.notes-0 {
  padding-left: 0 !important;
  text-indent: 0;
}
@media screen and (max-width: 768px) {
  #contents .notes {
    font-size: 2.8vw !important;
  }
}

/*----------------
#contents .intro上書き
/*--------------*/
#contents .intro h2 .sub {
  display: inline-block;
  font-size: 26px;
  font-family: YakuHanJP_Noto, 'Roboto', "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  color: #1a1a1a;
  position: relative;
}
#contents .intro h2 .sub:before,
#contents .intro h2 .sub:after {
  content: "";
  position: absolute;
  width: 40px;
  height: 1px;
  background-color: #1a1a1a;
  top: 50%;
}
#contents .intro h2 .sub:before {
  left: -55px;
}
#contents .intro h2 .sub:after {
  right: -55px;
}
#contents .intro .nav {
  border-top: 1px solid #333;
  border-bottom: 1px solid #333;
}
@counter-style custom-fullwidth {
  system: numeric;
  symbols: '０' '１' '２' '３' '４' '５' '６' '７' '８' '９';
  suffix: '．'; 
}
#contents .intro .nav ul li ol {
  list-style-type: custom-fullwidth !important;
  padding-top: 0;
  padding-left: 3em;
}
#contents .intro .nav ul li ol li {
  display: list-item !important;
  list-style-type: custom-fullwidth !important;
  color: #1A1A1A;
}
#contents .intro .nav ul li ol li::marker {
  font-size: 17px;
  letter-spacing: 2px;
}
#contents .intro .nav ul li ol li a {
  color: #1A1A1A;
  font-size: 16px;
  font-weight: unset;
}
@media screen and (max-width: 767px) {
  #contents .intro .nav ul li ol {
    padding-left: 1.8em;
  }
  #contents .intro .nav ul li ol li a {
    font-size: 3.6vw;
  }
  #contents .intro .nav ul li ol li::marker {
    font-size: 3.6vw;
}
}
@media screen and (max-width: 768px) {
  #contents .intro h2 .sub {
    font-size: 4.3vw;
  }
  #contents .intro h2 .sub:before,
  #contents .intro h2 .sub:after {
    width: 5vw;
  }
  #contents .intro h2 .sub:before {
    left: -8vw;
  }
  #contents .intro h2 .sub:after {
    right: -8vw;
  }
}

#contents .point p {
  margin: 0 !important;
  padding: 0;
}

/*----------------
本文画像・小見出し
/*--------------*/
#contents .point .img {
  margin: 40px 0 0;
}
#contents .point .img img {
  width: 100%;
  height: auto;
  vertical-align: top;
  margin-top: 20px;
}

#contents .point h4.subhead {
  padding: 120px 0 0 !important;
  margin: calc(-120px + 2.6em) 0 0.8em !important;
  font-size: 23px;
  line-height: 1.6;
  letter-spacing: 0.06em;
  color: #a77f98;
  font-weight: 500;
}
#contents .point h4.subhead .num {
  font-size: 32px;
  margin: 0 10px 0 0;
  font-family: YakuHanMP_Noto, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
  color: #a77f98;
}
#contents .point h4.subhead + p {
  padding-top: 0 !important;
  font-family: YakuHanJP, Lato, "Noto Sans JP", 游ゴシック体, YuGothic, "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, Meiryo, "MS PGothic", Osaka, sans-serif;
  font-size: 16px;
}

.sub-item {
  margin: 1.6em 0 0;
}
.sub-item h5 {
  position: relative;
  margin: 0 0 0.4em !important;
  padding: 0 0 0 1.4em;
  font-size: 20px !important;
  line-height: 1.6 !important;
  color: #1A1A1A;
}
.sub-item h5::before {
  content: "";
  position: absolute;
  left: 0.1em;
  top: 0.38em;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background-color: #a77f98;
}
.sub-item p {
  font-family: YakuHanJP_Noto, 'Roboto', "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif !important;
  font-size: 16px !important;
  line-height: 2 !important;
}

@media screen and (max-width: 768px) {
  #contents .point .img {
    margin: 6vw 0 0;
  }
  #contents .point h4.subhead {
    font-size: 4.8vw !important;
    padding: 16vw 0 0 !important;
    margin: calc(-16vw + 8vw) 0 3vw !important;
  }
  #contents .point h4.subhead .num {
    font-size: 6.5vw;
  }
  #contents .point h4.subhead + p {
    font-size: 3.73vw;
  }
  .sub-item h5 {
    font-size: 4.2vw !important;
  }
  .sub-item h5::before {
    left: 0.2em;
    top: 0.4em;
    width: 14px;
    height: 14px;
}
  .sub-item p {
    font-size: 3.5vw !important;
  }
}

/*----------------
check（コラム3相当）
/*--------------*/
#contents .point ul li::before {
  display: none;
}
#contents .point ul li::after {
  display: none;
}
#contents .point .check ul li:hover {
  cursor: default;
}

.check {
  margin: 50px 0 80px;
  padding: 60px 0;
  background-color: #f9f7ec;
  position: relative;
}
.check .check-list {
  width: 570px;
  margin: 0 auto;
  position: relative;
  padding: 60px 0 0;
}
.check .check-list .check-serif {
  display: block;
  position: absolute;
  width: 100px;
  top: 0;
  left: 0;
  margin: 0 !important;
  padding: 0 !important;
}
.check .check-list .check-serif img {
  width: 100%;
  height: auto;
  vertical-align: top;
}
.check .check-list ul li + li {
  margin: 30px 0 0;
}
.check .check-list ul li h5 {
  font-family: YakuHanMP_Noto, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
  font-size: 20px !important;
  margin: 0 0 10px !important;
  padding: 0 0 0 1.7em;
  font-weight: 500 !important;
  color: #a77f98;
  background-repeat: no-repeat;
  background-size: 23px;
  background-position: left center;
  background-image: url("../img/p1-check-mark.svg");
}
.check .check-list ul li p {
  font-family: YakuHanJP_Noto, 'Roboto', "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif !important;
  font-size: 16px !important;
  margin: 0 !important;
  line-height: 2 !important;
}

@media screen and (max-width: 768px) {
  .check {
    padding: 5vw 5vw 6vw;
    margin: 8vw 0 10vw;
  }
  .check .check-list {
    width: auto;
    padding: 14vw 0 0;
  }
  .check .check-list ul li h5 {
    line-height: 1.5;
    font-size: 4.3vw !important;
    margin: 0 0 2.4vw !important;
    padding: 0 0 0 2em;
  }
  .check .check-list ul li p {
    font-size: 3.5vw !important;
    padding: 0 !important;
  }
}

/*----------------
ソムリエPOINT
/*--------------*/
.sommelier-point {
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  background-color: #f3efda;
  border: 1px solid #e8dfc0;
  box-shadow: 0 0 0 3px #fff, 0 0 0 5px #e8dfc0;
  padding: 28px 32px;
  margin: 70px 0 120px;
  box-sizing: border-box;
}
#contents .point .sommelier-point p.mark {
  width: 120px;
  flex-shrink: 0;
  margin: 0 28px 0 0 !important;
}
.sommelier-point .mark img {
  width: 100%;
  height: auto;
  vertical-align: top;
}
.sommelier-point p {
  font-family: YakuHanJP_Noto, 'Roboto', "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif !important;
  font-size: 18px !important;
  line-height: 1.9 !important;
  margin: 0 !important;
}
@media screen and (max-width: 768px) {
  .sommelier-point {
    display: block;
    padding: 5vw;
    margin: 10vw 0 15vw;
  }
  #contents .point .sommelier-point p.mark {
    width: 28vw;
    margin: 0 auto 5vw !important;
  }
  .sommelier-point p {
    font-size: 3.5vw !important;
  }
}

/*----------------
.service
/*--------------*/
.service {
  background-color: #f6f2f5;
  padding: 80px 0;
}
.service.service_02 {
  background-color: unset;
  padding: 80px 0 0;
}
.service .c-normalw {
  width: 696px;
  margin: 0 auto;
}
.service h3 {
  color: #a77f98;
  font-size: 28px !important;
  font-family: YakuHanMP_Noto, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
  margin: 0 0 25px;
  text-align: center;
  line-height: 1.6;
  font-weight: 600;
}
.service p {
  font-size: 18px;
  font-family: YakuHanMP_Noto, "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
  margin: 0 0 40px;
  text-align: center;
  line-height: 2 !important;
}
.service p span {
  font-size: 14px;
  display: block;
}
.service .name {
  border-top: 1px solid #a77f98;
  border-bottom: 1px solid #a77f98;
  padding: 13px 10px;
  margin: 0 auto 30px;
  color: #a77f98;
  font-size: 18px;
  font-family: YakuHanJP_Noto, 'Roboto', "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: .08em;
  width: fit-content;
}
.service .name span {
  font-size: 14px;
}
.service .item {
  background-color: #fff;
  padding: 30px 28px;
  text-align: left;
  margin: 0 0 20px;
}
.service .item ul li {
  font-size: 16px;
  position: relative;
  padding: 0 0 0 2em;
  background-image: url("../img/p1-check-mark.svg");
  background-repeat: no-repeat;
  background-size: 20px;
  background-position: left 0.15em;
}
.service .item ul li + li {
  margin: 14px 0 0;
}
.service .item ul li::before,
.service .item ul li::after {
  display: none;
}
.service .notes {
  text-align: left !important;
  font-size: 12px !important;
  margin: 0 !important;
  line-height: 1.7 !important;
}
.service .service_br {
  margin: 50px 0 0 !important;
}
#contents p.notes a {
  color: #1A1A1A;
  text-decoration: unset;
}

@media screen and (max-width: 768px) {
  .service {
    padding: 10vw 0 6vw;
  }
  .service.service_02 {
    padding: 10vw 0 0;
  }
  .service .c-normalw {
    width: auto;
    padding: 0 6%;
  }
  .service p {
    text-align: left !important;
    font-size: 4vw;
  }
  .service p span {
    font-size: 3.2vw;
    margin: 2vw 0 0;
  }
  .service h3 {
    font-size: 5.4vw !important;
    line-height: 1.6;
    margin: 0 0 4vw;
  }
  .service .name {
    font-size: 4.4vw;
    padding: 4vw 2vw;
    text-align: center !important;
  }
  .service .item {
    padding: 6vw 4vw;
  }
  .service .item ul li {
    font-size: 3.7vw;
  }
  .service .service_br {
    margin: 6vw 0 0 !important;
  }
}
