@import url("https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@400;500;700&display=swap");
@import url("https://use.typekit.net/nls3ona.css");
/**
 mixin
 */
html {
  font-size: 10px; }

body {
  background-color: #fefaf7; }
  body #main {
    font-family: "Zen Maru Gothic", serif;
    color: #8f6a4c;
    font-weight: 500;
    line-height: 1.72; }

.show_sp {
  display: none !important; }

@media (max-width: 979px) {
  .show_pc {
    display: none !important; }
  .show_sp {
    display: block !important; } }

.secTitle {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-bottom: 60px; }
  .secTitle--en {
    font-family: "allura", sans-serif;
    font-size: 80px;
    line-height: 1;
    font-weight: 400; }
  .secTitle--jp {
    font-size: 22px;
    line-height: 1.72;
    margin-top: -12px; }

.text-note {
  font-size: 18px; }
  @media screen and (max-width: 979px) {
    .text-note {
      font-size: 3.2vw; } }

.collection {
  margin-top: 29px; }
  .collection__top {
    padding: 94px 0 37px;
    background: url("../images/bg_collection.png");
    background-position: top center;
    background-repeat: no-repeat;
    background-size: 834px auto; }
  .collection__box {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 35px 23px;
    max-width: 554px;
    margin: 0 auto; }
    .collection__box .item a {
      display: flex;
      align-items: center;
      justify-content: center;
      flex-direction: column;
      text-align: center;
      height: 161px;
      width: 170px;
      text-decoration: none;
      font-weight: bold;
      font-size: 21px;
      color: #8f6a4c;
      line-height: 1.19;
      background: url("../images/heart-pink.png");
      background-size: contain;
      padding-bottom: 5px;
      transition: opacity 0.3s ease-out;
      background-repeat: no-repeat;
      background-position: center center; }
      .collection__box .item a:after {
        content: "";
        width: 25px;
        height: 26px;
        background: url("../images/arrow-down.png");
        background-size: cover;
        margin-top: 10px; }
    .collection__box .item.pink a {
      background-image: url("../images/heart-pink.png"); }
    .collection__box .item.yellow a {
      background-image: url("../images/heart-yellow.png"); }
    .collection__box .item.green a {
      background-image: url("../images/heart-green.png"); }
  .collection__medical--head {
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 25px;
    line-height: 1.5;
    font-weight: bold;
    margin-bottom: 28px; }
    .collection__medical--head:before {
      content: "";
      width: 40px;
      height: 64px;
      background: url("../images/deco-line01.png");
      background-size: cover;
      margin-right: 20px;
      margin-top: 25px; }
    .collection__medical--head:after {
      content: "";
      width: 40px;
      height: 64px;
      background: url("../images/deco-line01.png");
      background-size: cover;
      margin-left: 15px;
      margin-top: 25px;
      transform: scaleX(-1); }
  .collection .js-tab__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 25px; }
    .collection .js-tab__list--item {
      height: 100px;
      display: flex;
      align-items: flex-end; }
      .collection .js-tab__list--item a {
        height: 80px;
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        border-top-right-radius: 30px;
        text-decoration: none;
        font-size: 22px;
        line-height: 1.18;
        font-weight: bold;
        color: #8f6a4c;
        transition: all 0.3s ease-out;
        margin-top: auto; }
        .collection .js-tab__list--item a:hover {
          opacity: 1; }
        .collection .js-tab__list--item a span {
          opacity: 0.5;
          padding: 0 5px;
          position: relative; }
          .collection .js-tab__list--item a span:after {
            content: "";
            position: absolute;
            left: 0;
            bottom: 0;
            width: 100%;
            height: 9px;
            background: url("../images/dot-w.png");
            background-size: 9px;
            background-repeat: repeat-x;
            opacity: 0; }
      .collection .js-tab__list--item.pink a {
        background-color: #eec7d2; }
      .collection .js-tab__list--item.yellow a {
        background-color: #fbedb6; }
        .collection .js-tab__list--item.yellow a span:after {
          background-image: url("../images/dot-b.png"); }
      .collection .js-tab__list--item.green a {
        background-color: #d8e0ea; }
      .collection .js-tab__list--item.active.pink a {
        color: #fff;
        background-color: #eca8bc; }
      .collection .js-tab__list--item.active.yellow a {
        background-color: #f7d570; }
      .collection .js-tab__list--item.active.green a {
        color: #fff;
        background-color: #a5c0df; }
      .collection .js-tab__list--item.active a {
        height: 100px;
        font-size: 25px; }
        .collection .js-tab__list--item.active a span {
          opacity: 1;
          padding-top: 10px;
          padding-bottom: 15px; }
          .collection .js-tab__list--item.active a span:after {
            opacity: 1; }
  .collection .js-tab__content--inner {
    display: none; }
    .collection .js-tab__content--inner:first-child {
      display: block; }
  .collection .js-tab__content .tab_inner {
    border: 8px solid;
    position: relative;
    padding: 30px;
    z-index: 1; }
    .collection .js-tab__content .tab_inner:before {
      content: "";
      border: 3px solid #fff;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      position: absolute;
      z-index: -1; }
    .collection .js-tab__content .tab_inner--wrap {
      display: flex;
      align-items: center;
      justify-content: space-between; }
    .collection .js-tab__content .tab_inner--list {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      grid-gap: 21px 18px; }
      .collection .js-tab__content .tab_inner--list .item a {
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        font-size: 25px;
        font-weight: bold;
        line-height: 1.16;
        min-width: 250px;
        height: 80px;
        text-decoration: none;
        color: #8f6a4c;
        background-color: #fff;
        border-radius: 40px;
        transition: opacity 0.3s ease-out;
        padding: 0 22px; }
        .collection .js-tab__content .tab_inner--list .item a ._arrow {
          display: flex;
          align-items: center;
          justify-content: center;
          width: 33px;
          height: 33px;
          border-radius: 50%;
          padding-right: 6px;
          margin-left: 22px; }
          .collection .js-tab__content .tab_inner--list .item a ._arrow:after {
            content: "";
            width: 10px;
            height: 10px;
            display: block;
            border-top: 2px solid;
            border-right: 2px solid;
            transform: rotate(45deg); }
    .collection .js-tab__content .tab_inner--image {
      width: 335px; }
  .collection .js-tab__content .tab-skin {
    border-color: #eca8bc;
    background-color: #f8eef1;
    padding: 37px 22px 23px 57px; }
    .collection .js-tab__content .tab-skin .item:nth-child(3) {
      grid-column: span 2; }
      .collection .js-tab__content .tab-skin .item:nth-child(3) a {
        margin: 0 auto; }
    .collection .js-tab__content .tab-skin .item .tab_inner--list {
      padding-bottom: 20px; }
    .collection .js-tab__content .tab-skin .item a {
      width: 250px; }
  .collection .js-tab__content .tab-face {
    border-color: #f7d570;
    background-color: #f9f2d5;
    padding: 17px 27px 35px 56px; }
    .collection .js-tab__content .tab-face .tab_inner--list {
      grid-gap: 21px 18px;
      padding-top: 11px; }
      .collection .js-tab__content .tab-face .tab_inner--list .item:nth-child(3) a {
        margin: 0 auto; }
      .collection .js-tab__content .tab-face .tab_inner--list .item a {
        min-width: 270px;
        max-width: 290px; }
        .collection .js-tab__content .tab-face .tab_inner--list .item a ._arrow {
          background-color: #f7d570; }
    .collection .js-tab__content .tab-face .tab_inner--image {
      width: 304px; }
  .collection .js-tab__content .tab-body {
    border-color: #a5c0df;
    background-color: #f1f4f8;
    padding: 20px 21px 38px 56px; }
    .collection .js-tab__content .tab-body .tab_inner--list {
      grid-gap: 21px 18px;
      grid-template-columns: 250px 280px;
      padding-top: 10px; }
      .collection .js-tab__content .tab-body .tab_inner--list .item:nth-child(2) a {
        width: 250px; }
      .collection .js-tab__content .tab-body .tab_inner--list .item a {
        max-width: 280px;
        width: auto; }
        .collection .js-tab__content .tab-body .tab_inner--list .item a ._arrow {
          background-color: #a5c0df;
          margin-left: 7px; }
          .collection .js-tab__content .tab-body .tab_inner--list .item a ._arrow:after {
            border-color: #fff; }
    .collection .js-tab__content .tab-body .tab_inner--image {
      width: 332px; }

.b-menu {
  margin-top: 67px; }
  .b-menu__list {
    max-width: 850px;
    margin: 0 auto 63px; }
  .b-menu__item {
    position: relative;
    border-radius: 0 100px 0 100px;
    border: 8px solid;
    padding: 48px 57px 68px;
    background-color: #fff; }
    .b-menu__item:not(:last-child) {
      margin-bottom: 60px; }
    .b-menu__item ._anchor {
      position: absolute;
      top: -8px; }
    .b-menu__item--head {
      display: flex;
      align-items: center;
      justify-content: center;
      text-align: center;
      margin-bottom: 45px;
      font-weight: bold;
      font-size: 28px;
      line-height: 1.43; }
      .b-menu__item--head:before {
        content: "";
        display: block;
        width: 48px;
        height: 66px;
        background: url("../images/deco-line02.png");
        background-size: cover;
        background-repeat: no-repeat;
        margin-right: 20px; }
      .b-menu__item--head:after {
        content: "";
        display: block;
        width: 48px;
        height: 76px;
        background: url("../images/deco-line03.png");
        background-size: cover;
        background-repeat: no-repeat;
        margin-left: 20px; }
    .b-menu__item--image {
      margin-bottom: 33px; }
    .b-menu__item--ttl {
      text-align: center;
      font-size: 45px;
      font-weight: bold;
      line-height: 1;
      margin-bottom: 24px; }
    .b-menu__item--detail {
      margin-bottom: 33px;
      font-size: 19px;
      line-height: 1.84; }
    .b-menu__item--point {
      padding: 32px 20px 41px 47px;
      background-color: #f7dee5;
      margin-bottom: 30px; }
      .b-menu__item--point .point-ttl {
        margin-bottom: 16px; }
      .b-menu__item--point .point-list {
        margin-bottom: 38px; }
        .b-menu__item--point .point-list li {
          font-size: 22px;
          padding-left: 40px;
          position: relative; }
          .b-menu__item--point .point-list li:before {
            content: "";
            position: absolute;
            height: 18px;
            width: 23px;
            background: url("../images/ico-check-pink.png");
            background-size: cover;
            top: 11px;
            left: 4px; }
      .b-menu__item--point .point-note {
        display: flex;
        flex-wrap: wrap; }
        .b-menu__item--point .point-note:before {
          content: "";
          display: inline-block;
          width: 73px;
          height: 38px;
          background: url("../images/arrow-note.png");
          background-size: cover;
          margin-right: 13px; }
        .b-menu__item--point .point-note span {
          display: inline-block;
          background-color: #8f6a4c;
          color: #fff;
          font-size: 25px;
          line-height: 1.2;
          padding: 3px 21px 7px; }
    .b-menu__item--note {
      margin-bottom: 25px; }
    .b-menu__item--date {
      margin-top: 33px;
      margin-right: -17px; }
      .b-menu__item--date.-start {
        margin-left: -46px; }
    .b-menu__item--price {
      margin-top: 55px; }
      .b-menu__item--price .price-slider .slick-prev,
      .b-menu__item--price .price-slider .slick-next {
        width: 73px;
        height: 73px;
        border-radius: 50%; }
        .b-menu__item--price .price-slider .slick-prev:before,
        .b-menu__item--price .price-slider .slick-next:before {
          width: 32px;
          height: 32px;
          background-image: url(/assets/skincare/bridal/images/ico-nav.png);
          background-size: cover;
          margin: auto; }
      .b-menu__item--price .price-slider .slick-prev {
        left: -100px; }
      .b-menu__item--price .price-slider .slick-next {
        right: -100px; }
        .b-menu__item--price .price-slider .slick-next:before {
          transform: scaleX(-1); }
      .b-menu__item--price .price-slider02 .price-ctn {
        display: flex;
        justify-content: flex-end; }
      .b-menu__item--price .price-slider02 .price-detail {
        width: 403px;
        padding-left: 10px; }
        .b-menu__item--price .price-slider02 .price-detail.long {
          width: 450px; }
      .b-menu__item--price .price-ttl {
        text-align: center;
        background-color: #8f6a4c;
        color: #fff;
        font-weight: bold;
        font-size: 25px;
        line-height: 1.52;
        padding: 11px; }
      .b-menu__item--price .price-ctn {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 65px;
        padding: 0 15px; }
        .b-menu__item--price .price-ctn.st01 {
          display: flex;
          justify-content: center;
          grid-gap: 0; }
          .b-menu__item--price .price-ctn.st01 .price-detail {
            display: inline-block;
            text-align: center;
            padding: 25px 3px 25px;
            margin: 0 40px; }
        .b-menu__item--price .price-ctn.st02 {
          display: flex;
          flex-wrap: nowrap;
          align-items: center;
          justify-content: space-between;
          width: 100%; }
          .b-menu__item--price .price-ctn.st02 .price-detail {
            width: 100%;
            align-items: center;
            justify-content: space-between;
            padding: 15px 0 18px; }
          .b-menu__item--price .price-ctn.st02 .ttl {
            width: auto;
            margin-right: auto;
            text-align: left;
            padding-top: 15px; }
          .b-menu__item--price .price-ctn.st02 .txt_s {
            margin-right: 15px; }
      .b-menu__item--price .price-detail {
        font-weight: bold;
        padding: 26px 0 16px;
        border-bottom: 2px dashed #e9e9e9;
        display: flex;
        align-items: baseline;
        flex-wrap: wrap; }
        .b-menu__item--price .price-detail .ttl {
          width: 100%;
          text-align: center;
          font-size: 20px;
          margin-bottom: 5px; }
        .b-menu__item--price .price-detail .txt_s {
          font-size: 28px;
          margin-right: auto; }
        .b-menu__item--price .price-detail .numb {
          font-size: 60px;
          line-height: 1; }
        .b-menu__item--price .price-detail .unit {
          font-size: 35px; }
        .b-menu__item--price .price-detail .tax {
          font-size: 18px; }
      .b-menu__item--price .price-note {
        font-size: 15px;
        text-align: center;
        margin-top: 15px; }
    .b-menu__item .b-menu__item--btn {
      text-align: center;
      margin: 40px 0 0; }
      .b-menu__item .b-menu__item--btn a {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 450px;
        height: 80px;
        color: #8f6a4c;
        font-size: 25px;
        text-decoration: none;
        margin: 0 auto;
        border-radius: 100px;
        padding: 0 0 3px;
        position: relative; }
        .b-menu__item .b-menu__item--btn a::before {
          content: "";
          display: block;
          width: 14px;
          height: 14px;
          border-top: 2px solid #8f6a4c;
          border-right: 2px solid #8f6a4c;
          transform: translate(-50%, -50%) rotate(45deg);
          position: absolute;
          right: 25px;
          top: 50%; }
    .b-menu__item.pink {
      border-color: #eca8bc; }
      .b-menu__item.pink .b-menu__item--point {
        background-color: #f7dee5; }
        .b-menu__item.pink .b-menu__item--point .point-list li:before {
          background-image: url(../images/ico-check-pink.png); }
      .b-menu__item.pink .slick-prev,
      .b-menu__item.pink .slick-next {
        background-color: #eca8bc; }
      .b-menu__item.pink .b-menu__item--btn a {
        color: #fff;
        background: #eca8bc;
        background: linear-gradient(0deg, #eca8bc 50%, rgba(236, 168, 188, 0.75) 50%); }
        .b-menu__item.pink .b-menu__item--btn a::before {
          border-color: #fff; }
    .b-menu__item.yellow {
      border-color: #f7d570; }
      .b-menu__item.yellow .b-menu__item--point {
        background-color: #f9ebb1; }
        .b-menu__item.yellow .b-menu__item--point .point-list li:before {
          background-image: url(../images/ico-check-yellow.png); }
      .b-menu__item.yellow .slick-prev,
      .b-menu__item.yellow .slick-next {
        background-color: #f7d570; }
      .b-menu__item.yellow .b-menu__item--btn a {
        background: #f7d570;
        background: linear-gradient(0deg, #f7d57a 50%, rgba(247, 213, 122, 0.7) 50%); }
    .b-menu__item.green {
      border-color: #a5c0df; }
      .b-menu__item.green .b-menu__item--point {
        background-color: #d8e0ea; }
        .b-menu__item.green .b-menu__item--point .point-list li:before {
          background-image: url(../images/ico-check-green.png); }
      .b-menu__item.green .slick-prev,
      .b-menu__item.green .slick-next {
        background-color: #a5c0df; }
      .b-menu__item.green .b-menu__item--btn a {
        color: #fff;
        background: #a5c0df;
        background: linear-gradient(0deg, #a5c0df 50%, rgba(165, 192, 223, 0.8) 50%); }
        .b-menu__item.green .b-menu__item--btn a::before {
          border-color: #fff; }
  .b-menu .c-btn__btn {
    margin-top: 0; }

.clinic {
  padding-bottom: 50px; }
  .clinic .bc-item > .info > .name {
    font-size: 30px;
    color: #000; }
  .clinic .bc-item > .info > .address {
    margin: 20px 0 30px;
    font-size: 16px;
    line-height: 30px; }
  @media screen and (max-width: 979px) {
    .clinic {
      padding: 6vw 0; } }

.c-btn__desc {
  margin-bottom: 11px;
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 0;
  text-align: center; }

.c-btn__btn {
  padding-right: 13px; }
  .c-btn__btn a {
    position: relative;
    display: block;
    max-width: 554px;
    width: 100%;
    height: 99px;
    margin: 0 auto;
    padding: 23px 20px 20px;
    box-shadow: 14px 14px 7px 0px rgba(124, 121, 121, 0.35), inset 0px 0px 21px 0px rgba(209, 140, 184, 0.28);
    border-radius: 50px;
    background-image: url("/assets/skincare/bridal/images/mv-button-brg.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100% 100%;
    font-size: 28px;
    font-weight: bold;
    color: #fff;
    text-align: center;
    text-decoration: none;
    z-index: 1; }
    .c-btn__btn a:before {
      content: "";
      position: absolute;
      bottom: -46px;
      right: -9px;
      width: 101px;
      height: 126px;
      background: url("/assets/skincare/bridal/images/mv-button-ico.png");
      background-repeat: no-repeat;
      background-size: 100% 100%;
      background-position: center; }

.b-mv {
  position: relative;
  background: url("/assets/skincare/bridal/images/mv-brg.png") no-repeat top left 48.6%/1407px 1565px, url("/assets/skincare/bridal/images/pattern-brg.png");
  padding: 602px 0 101px;
  overflow: hidden; }
  .b-mv__top {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: 980px;
    height: 100%; }
  .b-mv__desc {
    position: absolute;
    top: 212px;
    right: 41px;
    width: 472px;
    height: 100px; }
  .b-mv__ttl {
    position: absolute;
    top: 298px;
    right: 41px;
    width: 508px;
    height: 217px; }
  .b-mv__wedding {
    position: relative;
    width: 650px;
    margin: 0 auto 30px;
    padding: 46px 70px 50px;
    border: 3px solid #fff;
    border-radius: 0 80px 0 80px;
    box-shadow: 4.243px 4.243px 12px 0px rgba(184, 174, 157, 0.39);
    background: rgba(255, 255, 255, 0.85);
    text-align: center;
    z-index: 1; }
    .b-mv__wedding--eng {
      position: absolute;
      top: 0;
      left: 50%;
      transform: translate(-56%, -76%) rotate(348deg);
      font-size: 46px;
      font-family: "allura", sans-serif;
      line-height: 1;
      font-weight: 400;
      letter-spacing: 0;
      color: #b5a191; }
    .b-mv__wedding--boxTtl {
      display: flex;
      align-items: center;
      margin-bottom: 36px;
      padding-left: 11px; }
    .b-mv__wedding--intro {
      margin-right: 9px;
      font-size: 25px;
      font-weight: bold;
      line-height: 1.36;
      letter-spacing: 0;
      color: #ad9480; }
    .b-mv__wedding--ttl {
      position: relative;
      display: inline-block;
      padding: 6px 18px 10px 23px;
      background-color: #fbf2f0;
      font-size: 48px;
      letter-spacing: 5px;
      line-height: 1;
      letter-spacing: 5px;
      font-weight: 500;
      color: #ad9480;
      border-radius: 1px; }
      .b-mv__wedding--ttl:before {
        content: "";
        position: absolute;
        bottom: -18px;
        right: -89px;
        width: 110px;
        height: 68px;
        background: url("/assets/skincare/bridal/images/mv-wedding-ico.png");
        background-repeat: no-repeat;
        background-size: 100% 100%;
        background-position: center; }
    .b-mv__wedding--text {
      position: relative;
      display: block;
      width: 439px;
      margin: 0 auto;
      font-size: 19px;
      font-weight: 500;
      line-height: 2.2;
      color: #8f6a4c; }
      .b-mv__wedding--text:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 2px;
        background: url("/assets/skincare/bridal/images/mv-wedding-line.png");
        background-position: bottom center;
        background-repeat: repeat-x; }
      .b-mv__wedding--text .txt_line {
        display: block;
        width: 100%;
        min-height: 42px;
        background: url("/assets/skincare/bridal/images/mv-wedding-line.png");
        background-position: bottom center;
        background-repeat: repeat-x; }
    .b-mv__wedding--sub {
      position: relative;
      margin-top: 36px;
      padding: 13px 50px 20px;
      border-radius: 20px;
      background-color: rgba(198, 185, 175, 0.13);
      font-size: 13px;
      font-weight: 500;
      line-height: 1.6;
      color: #8f6a4c; }
      .b-mv__wedding--sub:before {
        content: "";
        position: absolute;
        top: -20px;
        left: -24px;
        width: 36px;
        height: 57px;
        background-image: url("/assets/skincare/bridal/images/mv-wedding-heart.png");
        background-repeat: no-repeat;
        background-size: 100% 100%;
        background-position: center; }

.btn_scroll {
  width: 107px;
  margin: -60px auto 0; }
  .btn_scroll a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 110px;
    padding-bottom: 28px;
    background-image: url("/assets/skincare/bridal/images/mv-button-scroll.png");
    background-size: 107px 110px;
    background-position: center;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0;
    text-decoration: none;
    color: #8f6a4c; }
    .btn_scroll a .scroll_ico {
      position: absolute;
      bottom: 42px;
      left: 0;
      right: 0;
      margin: 0 auto;
      width: 11px;
      height: 11px;
      background-image: url("/assets/skincare/bridal/images/mv-btn-scroll-ico.png");
      background-size: 100% 100%;
      background-position: center; }

.b-schedule {
  margin-top: 0;
  padding-top: 33px; }
  .b-schedule .secTitle {
    padding-left: 20px;
    margin-bottom: 91px; }
  .b-schedule__menu {
    margin-bottom: 36px; }
    .b-schedule__menu--item {
      position: relative;
      max-width: 850px;
      width: 100%;
      margin: 96px auto 0;
      padding: 137px 50px 150px; }
      .b-schedule__menu--item:before {
        content: "";
        position: absolute;
        top: -9px;
        left: -106px;
        width: 182px;
        height: 152px;
        background: url("/assets/skincare/bridal/images/schedule-before-ico.png");
        background-repeat: no-repeat;
        background-size: 100% 100%;
        background-position: center; }
      .b-schedule__menu--item.schedule-pink {
        background: url("/assets/skincare/bridal/images/schedule-item-pink.png");
        background-repeat: no-repeat;
        background-size: 100% 100%;
        background-position: top left;
        margin-top: 0; }
        .b-schedule__menu--item.schedule-pink .b-schedule__menu--status .ico-left {
          position: absolute;
          bottom: -49px;
          left: 19px;
          width: 70px;
          height: 81px;
          background-image: url("/assets/skincare/bridal/images/schedule-heart-ico.png");
          background-size: 100% 100%;
          background-position: center; }
        .b-schedule__menu--item.schedule-pink .b-schedule__menu--status .ico-right {
          position: absolute;
          bottom: 24px;
          right: -17px;
          width: 70px;
          height: 70px;
          background-image: url("/assets/skincare/bridal/images/schedule-camera-ico.png");
          background-size: 100% 100%;
          background-position: center; }
      .b-schedule__menu--item.schedule-orange {
        background: url("/assets/skincare/bridal/images/schedule-item-orange.png");
        background-repeat: no-repeat;
        background-size: 100% 100%;
        background-position: top left;
        margin-top: 153px;
        padding: 139px 50px 128px; }
        .b-schedule__menu--item.schedule-orange .b-schedule__menu--num {
          background-image: url("/assets/skincare/bridal/images/schedule-menu-num-orange.png"); }
        .b-schedule__menu--item.schedule-orange .b-schedule__menu--status {
          color: #d8987c; }
          .b-schedule__menu--item.schedule-orange .b-schedule__menu--status .ico-left {
            position: absolute;
            bottom: -47px;
            left: 42px;
            width: 63px;
            height: 91px;
            background-image: url("/assets/skincare/bridal/images/schedule-status-ico03.png");
            background-size: 100% 100%;
            background-position: center; }
          .b-schedule__menu--item.schedule-orange .b-schedule__menu--status .ico-right {
            position: absolute;
            bottom: -5px;
            right: 14px;
            width: 76px;
            height: 87px;
            background-image: url("/assets/skincare/bridal/images/schedule-status-ico04.png");
            background-size: 100% 100%;
            background-position: center; }
      .b-schedule__menu--item.schedule-purple {
        background: url("/assets/skincare/bridal/images/schedule-item-purple.png");
        background-repeat: no-repeat;
        background-size: 100% 100%;
        background-position: top left;
        margin-top: 140px;
        padding: 140px 50px 172px; }
        .b-schedule__menu--item.schedule-purple .b-schedule__menu--num {
          background-image: url("/assets/skincare/bridal/images/schedule-menu-num-purple.png"); }
        .b-schedule__menu--item.schedule-purple .b-schedule__menu--status {
          color: #b499be; }
          .b-schedule__menu--item.schedule-purple .b-schedule__menu--status .ico-left {
            position: absolute;
            bottom: -37px;
            left: 9px;
            width: 91px;
            height: 56px;
            background-image: url("/assets/skincare/bridal/images/schedule-status-ico05.png");
            background-size: 100% 100%;
            background-position: center; }
          .b-schedule__menu--item.schedule-purple .b-schedule__menu--status .ico-right {
            position: absolute;
            bottom: 33px;
            right: -12px;
            width: 79px;
            height: 77px;
            background-image: url("/assets/skincare/bridal/images/schedule-status-ico06.png");
            background-size: 100% 100%;
            background-position: center; }
    .b-schedule__menu--status {
      display: flex;
      align-items: center;
      justify-content: center;
      position: absolute;
      top: 0;
      left: 50%;
      max-width: 476px;
      width: 100%;
      height: 151px;
      transform: translate(-50%, -25%);
      background: url("/assets/skincare/bridal/images/schedule-status-brg.jpg");
      font-size: 25px;
      line-height: 1.5;
      font-weight: 500;
      color: #d39598;
      text-align: center; }
      .b-schedule__menu--status:before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background: url("/assets/skincare/bridal/images/schedule-status-brg.jpg");
        background-size: 100% 100%;
        background-position: center;
        z-index: -1; }
      .b-schedule__menu--status:after {
        content: "";
        position: absolute;
        width: 486px;
        height: 148px;
        bottom: -20px;
        left: 0;
        right: 0;
        margin: auto;
        background: url("/assets/skincare/bridal/images/schedule-status-shadow.png");
        background-size: 100% 100%;
        background-position: center;
        z-index: -2; }
    .b-schedule__menu--ttl {
      position: relative;
      padding-bottom: 10px;
      margin-bottom: 54px;
      text-align: center; }
      .b-schedule__menu--ttl:before {
        content: "";
        position: absolute;
        bottom: -10px;
        left: 0;
        right: 0;
        margin: 0 auto;
        width: 27px;
        height: 3px;
        background: url("/assets/skincare/bridal/images/schedule-menu-dot.svg");
        background-repeat: no-repeat;
        background-size: 100% 100%;
        background-position: center; }
      .b-schedule__menu--ttl:after {
        content: "Bridal";
        position: absolute;
        bottom: 6px;
        left: -29px;
        right: 0;
        margin: 0 auto;
        width: 200px;
        height: 58px;
        font-size: 80px;
        font-weight: 400;
        color: #ba9d96;
        opacity: 0.1;
        font-family: "allura", sans-serif; }
      .b-schedule__menu--ttl img {
        width: 125px; }
    .b-schedule__menu--num {
      display: flex;
      align-items: center;
      justify-content: center;
      position: absolute;
      top: -99px;
      left: 24px;
      width: 157px;
      height: 92px;
      padding-bottom: 15px;
      background-image: url("/assets/skincare/bridal/images/schedule-menu-num-pink.png");
      background-repeat: no-repeat;
      background-size: 100% 100%;
      background-position: center;
      font-size: 22px;
      font-weight: bold;
      text-align: center;
      z-index: 1; }
  .b-schedule__list {
    text-align: center; }
    .b-schedule__list li {
      margin-bottom: 44px; }
    .b-schedule__list--lb {
      display: inline-block;
      padding-left: 47px; }
      .b-schedule__list--lb a {
        display: inline-block;
        position: relative;
        text-decoration: none;
        font-size: 25px;
        font-weight: bold;
        color: #8f6a4c;
        padding-right: 47px; }
        .b-schedule__list--lb a:before {
          content: "";
          position: absolute;
          top: 9px;
          right: 0;
          width: 25px;
          height: 25px;
          background: url("/assets/skincare/bridal/images/schedule-btn-arrow.png");
          background-repeat: no-repeat;
          background-size: 100% 100%;
          background-position: center; }
      .b-schedule__list--lb .txt_or {
        font-size: 25px;
        font-weight: bold;
        padding: 0 12px; }
      .b-schedule__list--lb.lb_other {
        position: relative;
        font-size: 22px;
        padding-top: 7px;
        letter-spacing: 0px;
        padding-left: 16px; }
        .b-schedule__list--lb.lb_other:before {
          content: "Others";
          position: absolute;
          top: -23px;
          left: -40px;
          transform: rotate(337deg);
          font-size: 34px;
          letter-spacing: 0;
          font-weight: 400;
          font-family: "allura", sans-serif;
          color: #b19f90;
          opacity: 0.4; }
    .b-schedule__list--sub {
      font-size: 19px;
      font-weight: 500;
      color: #a38670; }
      .b-schedule__list--sub.subList {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        margin-left: -57px;
        flex-direction: column; }
        .b-schedule__list--sub.subList .sub-btn {
          margin-left: 50px; }
          .b-schedule__list--sub.subList .sub-btn a {
            position: relative;
            display: inline-block;
            padding-right: 40px;
            text-decoration: none;
            color: #a38670; }
            .b-schedule__list--sub.subList .sub-btn a:before {
              content: "";
              position: absolute;
              top: 5px;
              right: 0;
              width: 25px;
              height: 25px;
              background-image: url("/assets/skincare/bridal/images/schedule-btn-arrow.png");
              background-repeat: no-repeat;
              background-size: 100% 100%;
              background-position: center; }
  .b-schedule .c-btn__btn {
    margin-top: 0; }

.b-flow {
  margin-top: 98px; }
  .b-flow__boxTtl {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 600px;
    width: 100%;
    margin: 0 auto;
    background-image: url("/assets/skincare/bridal/images/flow-brg-ttl.png");
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: top center;
    padding: 88px 30px 58px; }
    .b-flow__boxTtl .secTitle {
      margin-bottom: 0; }
    .b-flow__boxTtl--flower {
      position: absolute;
      top: 8px;
      left: 25px;
      width: 142px;
      height: 218px; }
    .b-flow__boxTtl--women {
      position: absolute;
      top: -28px;
      right: -179px;
      width: 346px;
      height: 345px;
      z-index: 2; }
  .b-flow__swiper {
    position: relative;
    margin-top: -30px;
    padding: 30px 5px;
    border-radius: 5px;
    overflow: hidden; }
    .b-flow__swiper:before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: url("/assets/skincare/bridal/images/flow-swiper-brg-shadow.png");
      background-repeat: no-repeat;
      background-size: 100% 100%;
      background-position: center; }
    .b-flow__swiper .swiper {
      position: relative;
      overflow: unset; }
      .b-flow__swiper .swiper-slide {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        min-height: 500px;
        background: url("/assets/skincare/bridal/images/flow-swiper-brg.png");
        background-repeat: no-repeat;
        background-size: 100% 100%;
        background-position: center; }
      .b-flow__swiper .swiper-button-prev {
        top: 48%;
        left: -5px;
        width: 58px;
        height: 58px;
        border-radius: 50%;
        background-color: #8f6a4c; }
        .b-flow__swiper .swiper-button-prev:after {
          content: "";
          width: 25px;
          height: 25px;
          background-image: url("/assets/skincare/bridal/images/ico-nav.png");
          background-repeat: no-repeat;
          background-size: 100% 100%;
          background-position: center;
          font-size: 0; }
      .b-flow__swiper .swiper-button-next {
        top: 48%;
        right: -5px;
        width: 58px;
        height: 58px;
        border-radius: 50%;
        background-color: #8f6a4c; }
        .b-flow__swiper .swiper-button-next:after {
          content: "";
          width: 25px;
          height: 25px;
          background-image: url("/assets/skincare/bridal/images/ico-nav.png");
          background-repeat: no-repeat;
          background-size: 100% 100%;
          background-position: center;
          font-size: 0;
          transform: rotate(180deg); }
      .b-flow__swiper .swiper-button-disabled {
        opacity: 0; }
    .b-flow__swiper--info {
      position: relative;
      padding: 0 70px 70px 91px;
      z-index: 0; }
      .b-flow__swiper--info:before {
        content: "";
        position: absolute;
        top: 0;
        right: 0;
        width: 157px;
        height: 100%;
        background: rgba(234, 212, 212, 0.64);
        z-index: -1; }
    .b-flow__swiper--num {
      position: relative;
      display: inline-block;
      padding-top: 30px;
      margin-bottom: 9px;
      font-size: 32px;
      font-weight: 400;
      font-family: "allura", sans-serif; }
      .b-flow__swiper--num:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        margin: 0 auto;
        width: 1px;
        height: 36px;
        background-color: #8f6a4c; }
    .b-flow__swiper--ttl {
      margin-bottom: 18px;
      font-size: 25px;
      font-weight: 700;
      line-height: 1.7; }
    .b-flow__swiper--photo {
      width: 320px; }
    .b-flow__swiper--content {
      display: flex;
      align-items: center;
      justify-content: center;
      flex-direction: column;
      padding: 53px 75px 0 40px; }
    .b-flow__swiper--txt {
      padding-left: 53px;
      width: 100%;
      font-size: 18px;
      font-weight: 500;
      line-height: 1.5; }
      .b-flow__swiper--txt p:not(:last-child) {
        margin-bottom: 30px; }
      .b-flow__swiper--txt .col_pink {
        font-size: 18px;
        font-weight: 700;
        color: #d7809a;
        text-decoration: underline;
        text-underline-offset: 3px;
        text-decoration-thickness: 1px; }
      .b-flow__swiper--txt .txt_number {
        display: inline-block;
        width: 100%;
        margin-left: 12px;
        line-height: 1.6; }
        .b-flow__swiper--txt .txt_number a {
          display: block;
          background: url("/assets/skincare/bridal/images/flow-number-ico.png");
          background-repeat: no-repeat;
          background-size: 25px 17px;
          background-position: left center;
          padding-left: 30px;
          font-size: 24px;
          font-weight: 700;
          color: #d7819a; }
    .b-flow__swiper--image {
      margin-top: 43px; }

.b-yt {
  width: 980px;
  margin: 70px auto;
  padding: 0 0 50px;
  text-align: center; }
  .b-yt .movie__wrap {
    position: relative;
    margin: 0; }
    .b-yt .movie__wrap .b-yt__swiper {
      width: 900px;
      margin: 0px auto 0;
      overflow: hidden; }
    .b-yt .movie__wrap .ytSlide__yt {
      width: 340px;
      height: 190px;
      background: none; }
    .b-yt .movie__wrap .swip-next,
    .b-yt .movie__wrap .swip-prev {
      position: absolute;
      width: 50px;
      height: 50px;
      cursor: pointer;
      z-index: 1; }
    .b-yt .movie__wrap .swip-prev {
      top: 35%;
      left: -10px;
      transform: scale(-1, 1); }
    .b-yt .movie__wrap .swip-next {
      top: 35%;
      right: -10px; }
    .b-yt .movie__wrap .swip-next::before,
    .b-yt .movie__wrap .swip-prev::before {
      position: absolute;
      display: block;
      content: "";
      width: 30px;
      height: 30px;
      border-top: 4px solid #000;
      border-right: 4px solid #000;
      transform: rotate(45deg); }

.b-album {
  position: relative;
  padding: 35px 0 80px; }
  .b-album__ttl {
    position: relative;
    margin-bottom: -19px;
    margin-left: 72px;
    text-align: center;
    z-index: 2; }
  .b-album__ico {
    position: absolute;
    top: 50%;
    left: 50%;
    max-width: 980px;
    width: 100%;
    height: 100%;
    transform: translate(-50%, -50%);
    z-index: 1; }
    .b-album__ico--top {
      position: absolute;
      top: -6px;
      right: 1px;
      width: 241px;
      height: 284px; }
    .b-album__ico--bottom {
      position: absolute;
      bottom: -12px;
      left: 0;
      width: 271px;
      height: 209px; }
  .b-album__swiper {
    overflow: hidden; }
    .b-album__swiper .swiper-wrapper {
      transition-timing-function: linear; }
    .b-album__swiper .swiper-slide {
      width: 353px; }

@media screen and (max-width: 979px) {
  .secTitle {
    margin-bottom: 6vw;
    padding-left: 0; }
    .secTitle--en {
      font-size: 14vw; }
    .secTitle--jp {
      font-size: 2.4vw;
      margin-top: 0; }
  .collection__top {
    padding: 9vw 0 4vw;
    background-size: 100% auto; }
  .collection__box {
    grid-gap: 3.5vw 2.5vw;
    max-width: 80vw; }
    .collection__box .item a {
      height: 23.5vw;
      width: 25vw;
      font-size: 3vw;
      padding-bottom: 0.5vw; }
      .collection__box .item a:after {
        width: 2.5vw;
        height: 2.6vw;
        margin-top: 1vw; }
  .collection__medical--head {
    font-size: 5vw;
    margin-bottom: 2.9vw; }
    .collection__medical--head:before {
      width: 4.2vw;
      height: 6.6vw;
      margin-right: 2.1vw;
      margin-top: 2.6vw; }
    .collection__medical--head:after {
      width: 4.2vw;
      height: 6.6vw;
      margin-left: 1.6vw;
      margin-top: 2.6vw; }
  .collection .js-tab__list {
    grid-gap: 2.6vw; }
    .collection .js-tab__list--item {
      align-content: end;
      height: 15vw; }
      .collection .js-tab__list--item a {
        height: 12vw;
        border-top-right-radius: 3vw;
        font-size: 3vw; }
        .collection .js-tab__list--item a span {
          padding: 0 0.5vw; }
          .collection .js-tab__list--item a span:after {
            height: 1vw;
            background-size: 1vw; }
      .collection .js-tab__list--item.active a {
        height: 15vw;
        font-size: 3.5vw; }
        .collection .js-tab__list--item.active a span {
          padding-top: 1vw;
          padding-bottom: 1.6vw; }
  .collection .js-tab__content .tab_inner {
    border-width: 1vw;
    padding: 3.2vw; }
    .collection .js-tab__content .tab_inner:before {
      border: 0.4vw solid #fff; }
    .collection .js-tab__content .tab_inner--wrap {
      display: block; }
    .collection .js-tab__content .tab_inner--list {
      grid-gap: 2.5vw 2vw;
      margin-bottom: 5vw; }
      .collection .js-tab__content .tab_inner--list .item a {
        font-size: 4vw;
        min-width: auto;
        max-width: 44vw;
        width: auto;
        height: 9vw;
        border-radius: 4.5vw;
        padding: 0 2vw; }
        .collection .js-tab__content .tab_inner--list .item a ._arrow {
          width: 3.4vw;
          height: 3.4vw;
          padding-right: 0.6vw;
          margin-left: 2vw; }
          .collection .js-tab__content .tab_inner--list .item a ._arrow:after {
            width: 1vw;
            height: 1vw;
            border-top: 0.2vw solid;
            border-right: 0.2vw solid; }
    .collection .js-tab__content .tab_inner--image {
      width: 35vw;
      margin: 0 auto; }
  .collection .js-tab__content .tab-skin {
    padding: 4vw 3vw; }
    .collection .js-tab__content .tab-skin .item .tab_inner--list {
      padding-bottom: 2vw; }
  .collection .js-tab__content .tab-face {
    padding: 4vw 3vw; }
    .collection .js-tab__content .tab-face .tab_inner--list {
      grid-gap: 2.5vw 2vw;
      padding-top: 0; }
      .collection .js-tab__content .tab-face .tab_inner--list .item a {
        min-width: auto;
        max-width: 44vw; }
    .collection .js-tab__content .tab-face .tab_inner--image {
      width: 31vw; }
  .collection .js-tab__content .tab-body {
    padding: 4vw 3vw; }
    .collection .js-tab__content .tab-body .tab_inner--list {
      grid-gap: 2.5vw 2vw;
      grid-template-columns: repeat(2, 1fr);
      padding-top: 0; }
      .collection .js-tab__content .tab-body .tab_inner--list .item:nth-child(2) a {
        width: auto; }
      .collection .js-tab__content .tab-body .tab_inner--list .item a {
        max-width: 45vw; }
        .collection .js-tab__content .tab-body .tab_inner--list .item a ._arrow {
          margin-left: 4vw; }
    .collection .js-tab__content .tab-body .tab_inner--image {
      width: 35vw; }
  .b-menu {
    margin-top: 7vw; }
    .b-menu__list {
      max-width: 100%;
      margin-bottom: 6vw; }
    .b-menu__item {
      border-radius: 0 10vw 0 10vw;
      border: 1vw solid;
      padding: 5.5vw 6vw;
      position: relative; }
      .b-menu__item ._anchor {
        position: absolute;
        top: calc(-119px - 1vw); }
      .b-menu__item:not(:last-child) {
        margin-bottom: 6vw; }
      .b-menu__item--head {
        margin-bottom: 4vw;
        font-size: 5vw; }
        .b-menu__item--head:before {
          width: 5vw;
          height: 7vw;
          margin-right: 2.2vw; }
        .b-menu__item--head:after {
          width: 5vw;
          height: 7vw;
          margin-left: 2.2vw; }
      .b-menu__item--image {
        margin-bottom: 3vw; }
      .b-menu__item--ttl {
        font-size: 5.5vw;
        margin-bottom: 2.6vw; }
      .b-menu__item--detail {
        margin-bottom: 3.5vw;
        font-size: 3.5vw; }
      .b-menu__item--point {
        padding: 4vw 2.2vw 4vw 4vw;
        background-color: #f7dee5;
        margin-bottom: 3vw; }
        .b-menu__item--point .point-ttl {
          margin-bottom: 1.7vw; }
          .b-menu__item--point .point-ttl img {
            width: 11vw; }
        .b-menu__item--point .point-list {
          margin-bottom: 4vw; }
          .b-menu__item--point .point-list li {
            font-size: 3vw;
            padding-left: 4vw; }
            .b-menu__item--point .point-list li:before {
              height: 1.8vw;
              width: 2.4vw;
              top: 1.2vw;
              left: 0.5vw; }
        .b-menu__item--point .point-note {
          flex-wrap: nowrap; }
          .b-menu__item--point .point-note:before {
            width: 7.7vw;
            height: 3.9vw;
            margin-right: 1.5vw; }
          .b-menu__item--point .point-note span {
            font-size: 3.5vw;
            padding: 0.5vw 2vw; }
      .b-menu__item--note {
        margin-bottom: 2.6vw; }
      .b-menu__item--date {
        margin-top: 3.2vw;
        margin-right: -2vw; }
        .b-menu__item--date.-start {
          margin-left: -4.7vw; }
      .b-menu__item--price {
        margin-top: 5vw; }
        .b-menu__item--price .price-slider .slick-prev,
        .b-menu__item--price .price-slider .slick-next {
          width: 6vw;
          height: 6vw;
          display: block !important; }
          .b-menu__item--price .price-slider .slick-prev:before,
          .b-menu__item--price .price-slider .slick-next:before {
            width: 2.2vw;
            height: 2.2vw; }
        .b-menu__item--price .price-slider .slick-prev {
          left: -5.8vw; }
        .b-menu__item--price .price-slider .slick-next {
          right: -5.8vw; }
        .b-menu__item--price .price-slider02 .price-detail {
          width: 40vw;
          padding-left: 1vw; }
          .b-menu__item--price .price-slider02 .price-detail.long {
            width: 46vw; }
        .b-menu__item--price .price-ttl {
          font-size: 3vw;
          padding: 1.4vw; }
        .b-menu__item--price .price-ctn {
          grid-gap: 4vw;
          padding: 0 2vw; }
          .b-menu__item--price .price-ctn.st01 {
            grid-gap: 0; }
            .b-menu__item--price .price-ctn.st01 .price-detail {
              padding: 2.7vw 0.4vw;
              margin: 0 4vw; }
          .b-menu__item--price .price-ctn.st02 .price-detail {
            padding: 1.8vw 0 2vw; }
          .b-menu__item--price .price-ctn.st02 .ttl {
            padding-top: 1.6vw; }
          .b-menu__item--price .price-ctn.st02 .txt_s {
            margin-right: 1.6vw; }
        .b-menu__item--price .price-detail {
          padding: 2.8vw 0 1.8vw;
          border-bottom: 0.2vw dashed #e9e9e9; }
          .b-menu__item--price .price-detail .ttl {
            font-size: 2.5vw;
            margin-bottom: 0.6vw; }
          .b-menu__item--price .price-detail .txt_s {
            font-size: 3.2vw; }
          .b-menu__item--price .price-detail .numb {
            font-size: 6vw; }
          .b-menu__item--price .price-detail .unit {
            font-size: 3.5vw; }
          .b-menu__item--price .price-detail .tax {
            font-size: 2vw; }
        .b-menu__item--price .price-note {
          font-size: 2.5vw;
          margin-top: 1.6vw; }
      .b-menu__item .b-menu__item--btn {
        margin: 6vw 0 0; }
        .b-menu__item .b-menu__item--btn a {
          width: 60vw;
          height: 10vw;
          font-size: 4vw;
          padding: 0 0 0.5vw; }
          .b-menu__item .b-menu__item--btn a::before {
            width: 2.5vw;
            height: 2.5vw;
            border-width: 0.5vw;
            right: 3.5vw; }
  .b-mv {
    background: url("/assets/skincare/bridal/images/mv-brg-sp.png") no-repeat top left 50%/100% 100%, url("/assets/skincare/bridal/images/pattern-brg.png");
    padding: 113.07457vw 0 7.15015vw;
    background-size: contain; }
    .b-mv__desc {
      top: -1.53218vw;
      right: 4.4%;
      left: unset;
      width: 15.62819vw;
      height: 70.88866vw;
      transform: unset; }
    .b-mv__ttl {
      top: 70.78652vw;
      right: 0.10215vw;
      width: 72.42084vw;
      height: 31.15424vw;
      left: unset;
      transform: unset; }
    .b-mv__wedding {
      width: 87.43616vw;
      padding: 5.92441vw 9.39734vw 6.1287vw;
      margin-bottom: 3.47293vw;
      border-radius: 0 12.76813vw 0 12.76813vw; }
      .b-mv__wedding--boxTtl {
        display: block;
        padding-left: 0;
        margin-bottom: 6.43514vw; }
      .b-mv__wedding--ttl {
        padding: 0.61287vw 4.49438vw 1.53218vw 5.00511vw;
        font-size: 7.66088vw; }
        .b-mv__wedding--ttl:before {
          bottom: -2.75792vw;
          right: -12.97242vw;
          width: 16.95608vw;
          height: 10.52094vw;
          background-image: url("/assets/skincare/bridal/images/mv-wedding-ico-sp.png"); }
      .b-mv__wedding--text {
        width: 100%;
        font-size: 3.5vw; }
        .b-mv__wedding--text .txt_line {
          min-height: 6.23085vw; }
      .b-mv__wedding--eng {
        top: -0.20429vw;
        left: 51%;
        font-size: 7.15015vw; }
      .b-mv__wedding--intro {
        margin-bottom: 2.45148vw;
        margin-right: 0;
        font-size: 4.0858vw;
        letter-spacing: 0.20429vw; }
      .b-mv__wedding--sub {
        margin-top: 4.49438vw;
        font-size: 2.8vw;
        padding: 2.0429vw 5.10725vw 3.06435vw; }
        .b-mv__wedding--sub:before {
          top: -2.0429vw;
          left: -4.18795vw;
          width: 5.61798vw;
          height: 8.88662vw; }
  .c-btn__desc {
    margin-bottom: 1.63432vw;
    font-size: 3.77937vw;
    letter-spacing: -0.3px; }
  .c-btn__btn a {
    max-width: 86.82329vw;
    height: 15.32176vw;
    padding: 3.77937vw 10.2145vw 3.06435vw;
    font-size: 4.29009vw;
    border-radius: 8.1716vw; }
    .c-btn__btn a:before {
      bottom: -7.2523vw;
      right: -0.91931vw;
      width: 16.13892vw;
      height: 19.40756vw; }
  .btn_scroll {
    width: 15.01532vw;
    margin: 0 auto 6.1287vw; }
    .btn_scroll a {
      height: 15.32176vw;
      background-size: 15.01532vw 15.32176vw;
      font-size: 2.65577vw;
      padding-bottom: 3.37079vw; }
      .btn_scroll a .scroll_ico {
        width: 1.63432vw;
        height: 1.63432vw;
        bottom: 5.61798vw; }
  .b-schedule {
    position: relative;
    padding-top: 2.0429vw; }
    .b-schedule ._anchor {
      position: absolute;
      top: calc(-119px - 1vw); }
    .b-schedule .inner {
      margin-top: 0; }
    .b-schedule .secTitle {
      margin-bottom: 14.30031vw; }
    .b-schedule__menu {
      margin-bottom: 4.0858vw; }
      .b-schedule__menu--item {
        position: relative;
        max-width: 94vw;
        width: 100%;
        margin: 10.2145vw auto 0;
        padding: 17.87538vw 5.10725vw 22.47191vw; }
        .b-schedule__menu--item:before {
          top: -1.02145vw;
          left: -8.98876vw;
          width: 15.52605vw;
          height: 12.4617vw; }
        .b-schedule__menu--item.schedule-pink .b-schedule__menu--status .ico-left {
          bottom: -5.00511vw;
          left: 1.94076vw;
          width: 7.15015vw;
          height: 8.27375vw; }
        .b-schedule__menu--item.schedule-pink .b-schedule__menu--status .ico-right {
          bottom: 2.45148vw;
          right: -1.73647vw;
          width: 7.15015vw;
          height: 7.15015vw; }
        .b-schedule__menu--item.schedule-orange {
          margin-top: 20.42901vw;
          padding: 17.87538vw 5.10725vw 19.40756vw; }
          .b-schedule__menu--item.schedule-orange .b-schedule__menu--status .ico-left {
            bottom: -4.80082vw;
            left: 4.29009vw;
            width: 6.43514vw;
            height: 9.2952vw; }
          .b-schedule__menu--item.schedule-orange .b-schedule__menu--status .ico-right {
            bottom: -0.51073vw;
            right: 1.43003vw;
            width: 7.76302vw;
            height: 8.88662vw; }
        .b-schedule__menu--item.schedule-purple {
          margin-top: 20.42901vw;
          padding: 17.87538vw 5.10725vw 25.53626vw; }
          .b-schedule__menu--item.schedule-purple .b-schedule__menu--status .ico-left {
            bottom: -3.77937vw;
            left: 0.91931vw;
            width: 9.2952vw;
            height: 5.72012vw; }
          .b-schedule__menu--item.schedule-purple .b-schedule__menu--status .ico-right {
            bottom: 3.37079vw;
            right: -1.22574vw;
            width: 8.06946vw;
            height: 7.86517vw; }
      .b-schedule__menu--ttl {
        padding-bottom: 2.0429vw;
        margin-bottom: 7.15015vw; }
        .b-schedule__menu--ttl img {
          width: 17.36466vw; }
        .b-schedule__menu--ttl:before {
          bottom: -1.02145vw;
          width: 2.75792vw;
          height: 0.30644vw; }
        .b-schedule__menu--ttl:after {
          bottom: 1.02145vw;
          left: -3.06435vw;
          width: 25.53626vw;
          height: 7.45659vw;
          font-size: 9.70378vw; }
      .b-schedule__menu--num {
        top: -15.32176vw;
        left: 6.63943vw;
        width: 20.12257vw;
        height: 13.48315vw;
        padding-bottom: 1.53218vw;
        font-size: 2.86006vw; }
      .b-schedule__menu--status {
        font-size: 4vw;
        max-width: 80%;
        height: 15.83248vw; }
        .b-schedule__menu--status:after {
          width: 100%;
          height: 15.32176vw;
          bottom: -2.0429vw; }
    .b-schedule__list li {
      margin-bottom: 4.29009vw; }
    .b-schedule__list--lb {
      padding-left: 4.80082vw; }
      .b-schedule__list--lb a {
        font-size: 4vw;
        padding-right: 4.80082vw; }
        .b-schedule__list--lb a:before {
          content: "";
          top: 1.22574vw;
          right: 0;
          width: 2.86006vw;
          height: 2.86006vw; }
      .b-schedule__list--lb.lb_other {
        font-size: 3.06435vw; }
        .b-schedule__list--lb.lb_other:before {
          top: -3.06435vw;
          left: -4.59653vw;
          font-size: 4.0858vw; }
      .b-schedule__list--lb .txt_or {
        font-size: 3.06435vw;
        padding: 0 1.53218vw 0; }
    .b-schedule__list--sub {
      font-size: 3vw; }
      .b-schedule__list--sub.subList {
        margin-left: -4.0858vw; }
        .b-schedule__list--sub.subList .sub-btn {
          margin-left: 4.0858vw; }
          .b-schedule__list--sub.subList .sub-btn a {
            padding-right: 4.59653vw; }
            .b-schedule__list--sub.subList .sub-btn a:before {
              top: 0.71502vw;
              width: 2.65577vw;
              height: 2.65577vw; }
  .b-flow {
    margin-top: 16.34321vw; }
    .b-flow__boxTtl {
      max-width: 69.45863vw;
      padding: 8.1716vw 3.06435vw 5.10725vw; }
      .b-flow__boxTtl--women {
        top: -2.0429vw;
        right: -10.2145vw;
        width: 33.29928vw;
        height: 33.19714vw; }
      .b-flow__boxTtl--flower {
        top: 1.53218vw;
        left: 3.06435vw;
        width: 15.52605vw;
        height: 24.31052vw; }
    .b-flow__swiper {
      margin-top: -3.06435vw;
      padding: 3.06435vw 0.51073vw 6.1287vw; }
      .b-flow__swiper .swiper-slide {
        min-height: 56.17978vw; }
      .b-flow__swiper .swiper-button-prev, .b-flow__swiper .swiper-button-next {
        width: 5.10725vw;
        height: 5.10725vw; }
        .b-flow__swiper .swiper-button-prev:after, .b-flow__swiper .swiper-button-next:after {
          width: 2.55363vw;
          height: 2.55363vw; }
      .b-flow__swiper .swiper-button-prev {
        left: -0.51073vw; }
      .b-flow__swiper .swiper-button-next {
        right: -0.51073vw; }
      .b-flow__swiper--info {
        padding: 0 6.1287vw 7.15015vw 6.63943vw; }
      .b-flow__swiper--ttl {
        font-size: 3.06435vw;
        margin-bottom: 2.0429vw; }
      .b-flow__swiper--num {
        padding-top: 4.0858vw;
        margin-bottom: 1.32789vw;
        font-size: 4.0858vw; }
        .b-flow__swiper--num:before {
          height: 4.59653vw; }
      .b-flow__swiper--photo {
        width: 32.68641vw; }
      .b-flow__swiper--content {
        padding: 5.10725vw 7.15015vw 0 4.0858vw; }
      .b-flow__swiper--info:before {
        width: 13.27886vw; }
      .b-flow__swiper--txt {
        padding-left: 3.06435vw;
        font-size: 2.24719vw; }
        .b-flow__swiper--txt p:not(:last-child) {
          margin-bottom: 3.06435vw; }
        .b-flow__swiper--txt .col_pink {
          font-size: 2.24719vw; }
        .b-flow__swiper--txt .txt_number {
          line-height: 2;
          margin-left: 1.22574vw; }
          .b-flow__swiper--txt .txt_number a {
            background-size: 2.86006vw 2.0429vw;
            background-position: top 1.94076vw left;
            font-size: 2.65577vw;
            padding-left: 3.57508vw; }
      .b-flow__swiper--image {
        margin-top: 4.0858vw; }
  .b-yt {
    width: 95%;
    margin: 7vw auto 0;
    padding: 0 0 5vw; }
    .b-yt .movie__wrap .b-yt__swiper {
      width: 90%;
      margin: 4vw auto 0; }
    .b-yt .movie__wrap .ytSlide__yt {
      padding-bottom: 0;
      height: auto; }
    .b-yt .movie__wrap .swip-next,
    .b-yt .movie__wrap .swip-prev {
      width: 3vw;
      height: 3vw; }
    .b-yt .movie__wrap .swip-prev {
      top: 32%;
      left: 1vw; }
    .b-yt .movie__wrap .swip-next {
      top: 32%;
      right: 1vw; }
    .b-yt .movie__wrap .swip-next::before,
    .b-yt .movie__wrap .swip-prev::before {
      width: 4vw;
      height: 4vw;
      border-top: 2px solid #000;
      border-right: 2px solid #000; }
  .b-album {
    padding: 3.57508vw 0 8.1716vw;
    margin-top: 5.10725vw; }
    .b-album__swiper .swiper-slide {
      width: 28.60061vw; }
    .b-album__ttl {
      margin-bottom: -3.06435vw;
      margin-left: 0; }
      .b-album__ttl img {
        width: 32.68641vw; }
    .b-album__ico--top {
      top: -1.02145vw;
      right: 4.0858vw;
      width: 20.53115vw;
      height: 24.92339vw; }
    .b-album__ico--bottom {
      bottom: 3.06435vw;
      left: 5.10725vw;
      width: 23.59551vw;
      height: 17.26251vw; } }
