@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@500&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@600&display=swap");
article {
  overflow: hidden; }
  article section {
    font-family: "Zen Kaku Gothic New", "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
    font-weight: 400;
    font-style: normal;
    font-size: 20px;
    color: #605557;
    position: relative; }
    @media only screen and (max-width: 979px) {
      article section {
        font-size: 3.5vw; } }
    article section em {
      font-style: normal;
      font-weight: bold; }
    article section .mask {
      width: 100%;
      position: absolute !important;
      left: 0;
      top: 0;
      mask-repeat: no-repeat;
      mask-position: center top;
      mask-size: cover;
      -webkit-mask-repeat: no-repeat;
      -webkit-mask-position: center top;
      -webkit-mask-size: cover;
      overflow: hidden;
      pointer-events: none; }
      article section .mask.mask01 {
        height: 100%;
        background: url(/assets/gynecology/images/bg01.jpg) center top/cover no-repeat;
        mask-image: url("/assets/gynecology/images/wave01.svg");
        -webkit-mask-image: url("/assets/gynecology/images/wave01.svg"); }
        article section .mask.mask01::before {
          content: "";
          width: 501px;
          height: 790px;
          background: url(/assets/gynecology/images/about01.png) center top/cover no-repeat;
          position: absolute;
          left: 50%;
          top: 45px;
          transform: translate(calc(-50% + 605px), 0); }
      article section .mask.mask02 {
        height: 100%;
        background: url(/assets/gynecology/images/recommend01.jpg) center top/cover no-repeat;
        mask-image: url("/assets/gynecology/images/wave01.svg");
        -webkit-mask-image: url("/assets/gynecology/images/wave01.svg"); }
        @media only screen and (max-width: 979px) {
          article section .mask.mask02 {
            background-position: calc(50% - -20vw) top; } }
      article section .mask.mask03 {
        height: 100%;
        background: url(/assets/gynecology/images/enquete01.jpg) center top/cover no-repeat;
        mask-image: url("/assets/gynecology/images/wave02.svg");
        -webkit-mask-image: url("/assets/gynecology/images/wave02.svg"); }
      article section .mask.mask04 {
        height: 100%;
        background: #faf5f4;
        background: linear-gradient(0deg, #faf5f4 4%, white 100%);
        mask-image: url("/assets/gynecology/images/wave01.svg");
        -webkit-mask-image: url("/assets/gynecology/images/wave01.svg"); }
      article section .mask.mask05 {
        height: 100%;
        background: url(/assets/gynecology/images/price01.jpg) center top/cover no-repeat;
        mask-image: url("/assets/gynecology/images/wave01.svg");
        -webkit-mask-image: url("/assets/gynecology/images/wave01.svg"); }
      article section .mask.mask06 {
        height: 100%;
        background: #fff;
        mask-image: url("/assets/gynecology/images/wave02.svg");
        -webkit-mask-image: url("/assets/gynecology/images/wave02.svg"); }
      article section .mask.mask07 {
        height: 100%;
        background: url(/assets/gynecology/images/reason01.jpg) center top/cover no-repeat;
        mask-image: url("/assets/gynecology/images /wave01.svg");
        -webkit-mask-image: url("/assets/gynecology/images/wave01.svg"); }
      article section .mask.mask08 {
        height: 100%;
        background: url(/assets/gynecology/images/comment01.jpg) center top/cover no-repeat;
        mask-image: url("/assets/gynecology/images /wave02.svg");
        -webkit-mask-image: url("/assets/gynecology/images/wave02.svg"); }
      article section .mask.mask09 {
        height: 100%;
        background: #fff;
        mask-image: url("/assets/gynecology/images/wave01.svg");
        -webkit-mask-image: url("/assets/gynecology/images/wave01.svg"); }
      article section .mask.mask10 {
        height: 100%;
        background: #f5ecf1;
        background: linear-gradient(0deg, #f5ecf1 0%, #fbf7fa 50%, #fdf7fb 100%);
        mask-image: url("/assets/gynecology/images/wave02.svg");
        -webkit-mask-image: url("/assets/gynecology/images/wave02.svg"); }
      article section .mask.mask11 {
        height: 100%;
        background: #fff;
        mask-image: url("/assets/gynecology/images/wave02.svg");
        -webkit-mask-image: url("/assets/gynecology/images/wave02.svg"); }
    article section > * {
      position: relative; }
    article section header.header_gyne {
      display: flex;
      justify-content: center;
      align-items: center;
      flex-direction: column;
      text-align: center;
      margin: 0 0 50px; }
      article section header.header_gyne p {
        font-family: sitka-text, "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
        font-weight: 400;
        font-style: normal;
        font-size: 80px;
        line-height: 0.6;
        background: #f897aa;
        background: linear-gradient(90deg, #f897aa 4%, #e79bc1 49%, #dda1d5 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        padding: 0 0 0.2em; }
      article section header.header_gyne h2 {
        font-size: 20px;
        font-weight: 500;
        color: #e88dae;
        line-height: 1.3;
        margin: 20px 0 0;
        padding: 0 65px;
        position: relative; }
        article section header.header_gyne h2::before, article section header.header_gyne h2::after {
          content: "";
          display: block;
          width: 38px;
          height: 8px;
          background: url(/assets/gynecology/images/index.png) left top repeat-x;
          position: absolute;
          top: 50%;
          transform: translate(0, -50%); }
        article section header.header_gyne h2::before {
          left: 0; }
        article section header.header_gyne h2::after {
          right: 0; }
      @media screen and (max-width: 979px) {
        article section header.header_gyne {
          margin: 0 0 7vw; }
          article section header.header_gyne p {
            font-size: 10vw; }
          article section header.header_gyne h2 {
            font-size: 3.5vw;
            margin: 2vw 0 0;
            padding: 0 8vw; }
            article section header.header_gyne h2::before, article section header.header_gyne h2::after {
              content: "";
              display: block;
              width: 5.5vw;
              height: 2vw;
              background-size: auto 100%; }
            article section header.header_gyne h2::before {
              left: 0; }
            article section header.header_gyne h2::after {
              right: 0; } }
    article section.s-mv {
      background: url(/assets/gynecology/images/mv_bg.jpg) center top no-repeat;
      text-align: center;
      position: relative; }
      article section.s-mv .nav-wrap {
        position: absolute;
        width: 100%;
        left: 0;
        bottom: 0; }
        article section.s-mv .nav-wrap::before {
          content: "";
          display: block;
          width: calc(50% + 480px - 105px);
          height: 100%;
          background: #fff;
          border-radius: 0 20px 0 0;
          position: absolute;
          left: 0;
          bottom: 0; }
        article section.s-mv .nav-wrap .nav-inner {
          width: 980px;
          margin: 0 auto; }
          article section.s-mv .nav-wrap .nav-inner > nav {
            width: 865px;
            padding: 0 50px 0 0;
            position: relative; }
            article section.s-mv .nav-wrap .nav-inner > nav .corner {
              display: block;
              width: 20px;
              height: 20px;
              position: absolute;
              right: -40px;
              bottom: -0; }
              article section.s-mv .nav-wrap .nav-inner > nav .corner:before {
                content: "";
                display: block;
                width: 200%;
                height: 200%;
                position: absolute;
                bottom: 0;
                right: 0;
                overflow: hidden;
                background: transparent;
                border-radius: 50%;
                box-shadow: -20px 20px 0 0 #fff; }
            article section.s-mv .nav-wrap .nav-inner > nav ul {
              width: 100%;
              display: flex;
              justify-content: space-between;
              align-items: center;
              margin: 0 auto; }
              article section.s-mv .nav-wrap .nav-inner > nav ul li a {
                display: flex;
                justify-content: center;
                align-items: center;
                flex-direction: column;
                height: 80px;
                text-decoration: none;
                position: relative; }
                article section.s-mv .nav-wrap .nav-inner > nav ul li a p {
                  text-align: center;
                  line-height: 1.3; }
                  article section.s-mv .nav-wrap .nav-inner > nav ul li a p.en {
                    font-family: sitka-text, "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
                    font-weight: 400;
                    font-style: normal;
                    font-size: 14px;
                    color: #eca2b1; }
                  article section.s-mv .nav-wrap .nav-inner > nav ul li a p.ja {
                    font-family: "Zen Kaku Gothic New", "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
                    font-weight: 400;
                    font-style: normal;
                    font-size: 15px;
                    color: #7a6f71;
                    margin: 5px 0 0; }
      @media only screen and (max-width: 979px) {
        article section.s-mv .nav-wrap::before {
          display: none; }
        article section.s-mv .nav-wrap .nav-inner {
          width: 100%; }
          article section.s-mv .nav-wrap .nav-inner > nav {
            width: 95vw;
            background: #fff;
            border-radius: 0 3vw 0 0;
            padding: 0 2vw; }
            article section.s-mv .nav-wrap .nav-inner > nav .corner {
              width: 3vw;
              height: 3vw;
              right: -6vw; }
              article section.s-mv .nav-wrap .nav-inner > nav .corner:before {
                box-shadow: -3vw 3vw 0 0 #fff; }
            article section.s-mv .nav-wrap .nav-inner > nav ul li a {
              height: 12vw; }
              article section.s-mv .nav-wrap .nav-inner > nav ul li a p.en {
                font-size: 2vw; }
              article section.s-mv .nav-wrap .nav-inner > nav ul li a p.ja {
                font-size: 2.5vw;
                margin: 1vw 0 0; } }
    article section.s-achievements {
      padding: 45px 0 50px; }
      article section.s-achievements .container {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 620px;
        height: 80px;
        color: #ed8491;
        border: 1px solid #ed8491;
        border-radius: 100px;
        margin: 0 auto; }
        article section.s-achievements .container p {
          font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
          font-size: 30px;
          font-weight: 600;
          line-height: 1.2;
          margin: 0; }
          article section.s-achievements .container p:last-child em {
            font-size: 56px;
            font-weight: 600;
            vertical-align: sub; }
        article section.s-achievements .container + p {
          font-size: 16px;
          text-align: center;
          line-height: 1.4;
          margin-top: 10px; }
      article section.s-achievements .banner {
        max-width: 800px;
        margin: 30px auto calc(-5vw - 95px);
        z-index: 1; }
        article section.s-achievements .banner ul {
          display: flex;
          justify-content: space-between; }
          article section.s-achievements .banner ul li {
            width: 480px; }
      @media only screen and (max-width: 979px) {
        article section.s-achievements {
          padding: 5vw 0; }
          article section.s-achievements .container {
            width: 85vw;
            height: 12vw; }
            article section.s-achievements .container p {
              font-size: 4vw; }
              article section.s-achievements .container p:last-child em {
                font-size: 7vw; }
            article section.s-achievements .container + p {
              font-size: 3vw;
              margin-top: 1.5vw; }
          article section.s-achievements .banner {
            max-width: 95%;
            margin: 5vw auto -15vw; }
            article section.s-achievements .banner ul li {
              width: 48%; } }
    article section.s-bg01 {
      margin: 35px 0 0; }
      @media only screen and (max-width: 979px) {
        article section.s-bg01 {
          margin: 5vw 0 0; } }
    article section.s-about {
      padding: 7vw 0 0;
      padding: calc(5vw + 60px) 0 0; }
      article section.s-about .container {
        width: 980px;
        margin: 0 auto; }
        article section.s-about .container > p + p {
          margin-top: 2em; }
        article section.s-about .container .contents {
          box-shadow: 22px 22px 27px rgba(199, 143, 157, 0.75);
          border: 2px solid #fff;
          border-radius: 80px 0;
          padding: 45px 60px 75px;
          margin: 55px 0 0;
          overflow: hidden; }
          article section.s-about .container .contents header {
            position: relative;
            margin: 0 0 50px; }
            article section.s-about .container .contents header h3 {
              font-family: "Shippori Mincho", serif;
              font-weight: 600;
              font-style: normal;
              font-size: 28px;
              color: #fff;
              text-align: center;
              background: #dcaab4;
              background: linear-gradient(90deg, rgba(220, 170, 180, 0) 0%, #dcaab4 20%, #d2a3c8 80%, rgba(210, 163, 200, 0) 100%);
              padding: 5px 20px; }
            article section.s-about .container .contents header p {
              font-family: misslegatees-pro, "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
              font-weight: 400;
              font-style: normal;
              font-size: 100px;
              line-height: 1;
              color: #7a6f71;
              opacity: 0.13;
              position: absolute;
              left: -85px;
              top: -40px;
              transform: rotate(-20deg);
              pointer-events: none; }
          article section.s-about .container .contents-inner {
            display: flex;
            gap: 0 15px; }
            article section.s-about .container .contents-inner .text {
              flex: 1; }
              article section.s-about .container .contents-inner .text p {
                font-size: 18px; }
                article section.s-about .container .contents-inner .text p + p {
                  margin-top: 1em; }
            article section.s-about .container .contents-inner .img {
              display: flex;
              justify-content: center;
              align-items: center;
              width: 450px;
              min-height: 330px;
              position: relative; }
              article section.s-about .container .contents-inner .img::before {
                content: "";
                width: 553px;
                height: 512px;
                background: url(/assets/gynecology/images/about02.png) center center/100% auto no-repeat;
                position: absolute;
                left: 50%;
                top: 50%;
                transform: translate(-50%, -50%); }
              article section.s-about .container .contents-inner .img > * {
                position: relative; }
      @media only screen and (max-width: 979px) {
        article section.s-about {
          padding: 12vw 0 5vw; }
          article section.s-about .about-banner {
            max-width: 95%;
            margin: -15vw auto 7vw; }
            article section.s-about .about-banner ul li {
              width: 48%; }
          article section.s-about .container {
            width: 95%;
            margin: 0 auto; }
            article section.s-about .container > p + p {
              margin-top: 1em; }
            article section.s-about .container .contents {
              box-shadow: 3vw 3vw 3.5vw rgba(199, 143, 157, 0.75);
              border-radius: 10vw 0;
              padding: 6vw 5vw 8vw;
              margin: 7vw 0 0; }
              article section.s-about .container .contents header {
                margin: 0 0 5vw; }
                article section.s-about .container .contents header h3 {
                  font-size: 4vw;
                  padding: 1vw 3vw; }
                article section.s-about .container .contents header p {
                  font-size: 12vw;
                  left: -7vw;
                  top: -8vw; }
              article section.s-about .container .contents-inner {
                flex-direction: column;
                gap: 3vw 0; }
                article section.s-about .container .contents-inner .text {
                  position: relative;
                  z-index: 1; }
                  article section.s-about .container .contents-inner .text p {
                    font-size: 3.5vw; }
                article section.s-about .container .contents-inner .img {
                  width: 100%;
                  min-height: inherit; }
                  article section.s-about .container .contents-inner .img::before {
                    width: 85vw;
                    height: 75vw; }
                  article section.s-about .container .contents-inner .img > * {
                    position: relative; }
                  article section.s-about .container .contents-inner .img img {
                    width: 70vw; } }
    article section.s-problems {
      padding: 14vw 0 8vw;
      padding: calc(12vw + 50px) 0 calc(5vw + 170px);
      position: relative; }
      article section.s-problems::before {
        content: "";
        display: block;
        width: 100%;
        height: 12vw;
        background: url(/assets/gynecology/images/wave03.png) center top/100% auto no-repeat;
        position: absolute;
        left: 0;
        top: 0; }
      article section.s-problems > * {
        position: relative; }
      article section.s-problems .container {
        width: 980px;
        margin: 0 auto; }
        article section.s-problems .container .tabacc.-pc-accordion .contents + .contents, article section.s-problems .container .tabacc.-sp-accordion .contents + .contents {
          margin-top: 20px; }
        article section.s-problems .container .tabacc.-pc-accordion .contents h3 .title, article section.s-problems .container .tabacc.-sp-accordion .contents h3 .title {
          display: flex;
          align-items: center;
          justify-content: center;
          min-height: inherit;
          height: 80px;
          font-size: 25px;
          font-weight: 500;
          line-height: 1;
          color: #fff;
          background: #f097ae;
          padding-bottom: 4px;
          border-radius: 10px;
          position: relative;
          padding: 5px 0;
          margin: 0;
          text-decoration: none; }
          article section.s-problems .container .tabacc.-pc-accordion .contents h3 .title::after, article section.s-problems .container .tabacc.-sp-accordion .contents h3 .title::after {
            content: "\FF0B";
            display: flex;
            justify-content: center;
            align-items: center;
            width: 40px;
            height: 40px;
            color: #fff;
            font-size: 15px;
            font-weight: 700;
            line-height: 1;
            border: 1px solid #fff;
            border-radius: 100%;
            background: none;
            padding: 0 0 3px;
            margin: 0;
            position: absolute;
            right: 45px;
            top: 50%;
            transform: translate(0, -50%); }
          article section.s-problems .container .tabacc.-pc-accordion .contents h3 .title.-open::after, article section.s-problems .container .tabacc.-sp-accordion .contents h3 .title.-open::after {
            content: "\FF0D"; }
        article section.s-problems .container .tabacc.-pc-accordion .contents .content, article section.s-problems .container .tabacc.-sp-accordion .contents .content {
          border: none;
          border-radius: 0;
          padding: 30px 10px 30px 0; }
          article section.s-problems .container .tabacc.-pc-accordion .contents .content .list, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list {
            display: flex;
            justify-content: space-between;
            flex-wrap: wrap;
            gap: 40px 30px; }
            article section.s-problems .container .tabacc.-pc-accordion .contents .content .list > li, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list > li {
              width: 470px;
              background: #fff;
              padding: 30px 40px 50px;
              box-shadow: 15px 15px 21px rgba(199, 154, 167, 0.2);
              border-radius: 40px 0; }
              article section.s-problems .container .tabacc.-pc-accordion .contents .content .list > li h4, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list > li h4 {
                font-family: "Shippori Mincho", serif;
                font-weight: 600;
                font-style: normal;
                color: #ed8491;
                font-size: 24px;
                line-height: 1.4;
                text-align: center;
                margin: 0 0 25px; }
              article section.s-problems .container .tabacc.-pc-accordion .contents .content .list > li > p, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list > li > p {
                font-size: 18px; }
              article section.s-problems .container .tabacc.-pc-accordion .contents .content .list > li .img, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list > li .img {
                text-align: center;
                margin: 0 0 30px; }
              article section.s-problems .container .tabacc.-pc-accordion .contents .content .list > li .link, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list > li .link {
                margin: 30px 0 0; }
                article section.s-problems .container .tabacc.-pc-accordion .contents .content .list > li .link > li + li, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list > li .link > li + li {
                  margin-top: 10px; }
                article section.s-problems .container .tabacc.-pc-accordion .contents .content .list > li .link > li a, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list > li .link > li a {
                  display: block;
                  width: 100%;
                  font-size: 14px;
                  line-height: 1.3;
                  text-align: center;
                  color: #7a6f71;
                  background: #fbf3f4;
                  border-radius: 10px;
                  padding: 18px 25px;
                  text-decoration: none;
                  position: relative; }
                  article section.s-problems .container .tabacc.-pc-accordion .contents .content .list > li .link > li a::before, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list > li .link > li a::before {
                    content: "";
                    width: 20px;
                    height: 100%;
                    display: block;
                    background: url(/assets/gynecology/images/arrow01.svg) left center/6px auto no-repeat;
                    position: absolute;
                    right: 0;
                    top: 0; }
                  article section.s-problems .container .tabacc.-pc-accordion .contents .content .list > li .link > li a .new, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list > li .link > li a .new {
                    padding-left: 40px;
                    position: relative; }
                    article section.s-problems .container .tabacc.-pc-accordion .contents .content .list > li .link > li a .new::before, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list > li .link > li a .new::before {
                      content: "";
                      display: block;
                      width: 35px;
                      height: 20px;
                      background: url(/assets/nose/images/icon-new.gif) left center/100% auto no-repeat;
                      position: absolute;
                      left: 0;
                      top: 50%;
                      transform: translate(0, -50%); }
        article section.s-problems .container .tabacc.-pc-accordion .contents:nth-child(even) h3 .title, article section.s-problems .container .tabacc.-sp-accordion .contents:nth-child(even) h3 .title {
          background: #d998c6; }
        article section.s-problems .container .tabacc.-pc-accordion .contents:nth-child(even) .content .list > li h4, article section.s-problems .container .tabacc.-sp-accordion .contents:nth-child(even) .content .list > li h4 {
          color: #b874af; }
        article section.s-problems .container .tabacc.-pc-accordion .contents:nth-child(even) .content .list > li .link > li a, article section.s-problems .container .tabacc.-sp-accordion .contents:nth-child(even) .content .list > li .link > li a {
          background: #f6eff8; }
          article section.s-problems .container .tabacc.-pc-accordion .contents:nth-child(even) .content .list > li .link > li a::before, article section.s-problems .container .tabacc.-sp-accordion .contents:nth-child(even) .content .list > li .link > li a::before {
            filter: brightness(0) saturate(100%) invert(54%) sepia(20%) saturate(891%) hue-rotate(257deg) brightness(95%) contrast(87%); }
      @media screen and (max-width: 979px) {
        article section.s-problems {
          padding: 19vw 0 17vw; }
          article section.s-problems .container {
            width: 95%; }
            article section.s-problems .container .tabacc.-pc-accordion .contents + .contents, article section.s-problems .container .tabacc.-sp-accordion .contents + .contents {
              margin-top: 3vw; }
            article section.s-problems .container .tabacc.-pc-accordion .contents h3 .title, article section.s-problems .container .tabacc.-sp-accordion .contents h3 .title {
              height: 10vw;
              font-size: 4vw;
              padding-bottom: 0.5vw;
              border-radius: 2vw;
              padding: 1vw 0; }
              article section.s-problems .container .tabacc.-pc-accordion .contents h3 .title::after, article section.s-problems .container .tabacc.-sp-accordion .contents h3 .title::after {
                width: 6vw;
                height: 6vw;
                font-size: 3vw;
                padding: 0 0 0.25vw;
                right: 5vw; }
            article section.s-problems .container .tabacc.-pc-accordion .contents .content, article section.s-problems .container .tabacc.-sp-accordion .contents .content {
              padding: 4vw 1vw 4vw 0; }
              article section.s-problems .container .tabacc.-pc-accordion .contents .content .list, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list {
                flex-direction: column;
                gap: 4vw 0; }
                article section.s-problems .container .tabacc.-pc-accordion .contents .content .list > li, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list > li {
                  width: 100%;
                  padding: 3vw 4vw 5vw;
                  box-shadow: 2vw 2vw 3vw rgba(199, 154, 167, 0.2);
                  border-radius: 5vw 0; }
                  article section.s-problems .container .tabacc.-pc-accordion .contents .content .list > li h4, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list > li h4 {
                    font-size: 4.5vw;
                    margin: 0 0 3vw; }
                  article section.s-problems .container .tabacc.-pc-accordion .contents .content .list > li > p, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list > li > p {
                    font-size: 3.5vw; }
                  article section.s-problems .container .tabacc.-pc-accordion .contents .content .list > li .img, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list > li .img {
                    margin: 0 0 4vw; }
                    article section.s-problems .container .tabacc.-pc-accordion .contents .content .list > li .img img, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list > li .img img {
                      max-width: inherit;
                      width: auto;
                      height: 27vw; }
                  article section.s-problems .container .tabacc.-pc-accordion .contents .content .list > li .link, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list > li .link {
                    margin: 4vw 0 0; }
                    article section.s-problems .container .tabacc.-pc-accordion .contents .content .list > li .link > li + li, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list > li .link > li + li {
                      margin-top: 1.5vw; }
                    article section.s-problems .container .tabacc.-pc-accordion .contents .content .list > li .link > li a, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list > li .link > li a {
                      font-size: 3.5vw;
                      border-radius: 2vw;
                      padding: 2.5vw 3.5vw; }
                      article section.s-problems .container .tabacc.-pc-accordion .contents .content .list > li .link > li a::before, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list > li .link > li a::before {
                        width: 3.5vw;
                        background-size: 1.5vw auto; }
                      article section.s-problems .container .tabacc.-pc-accordion .contents .content .list > li .link > li a .new, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list > li .link > li a .new {
                        padding-left: 8vw; }
                        article section.s-problems .container .tabacc.-pc-accordion .contents .content .list > li .link > li a .new::before, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list > li .link > li a .new::before {
                          width: 7vw;
                          height: 5vw; }
                      article section.s-problems .container .tabacc.-pc-accordion .contents .content .list > li .link > li a ruby rt, article section.s-problems .container .tabacc.-sp-accordion .contents .content .list > li .link > li a ruby rt {
                        transform: translateY(0.5em); } }
    article section.s-recommend {
      padding: 7vw 0 8vw;
      padding: calc(5vw + 60px) 0 calc(5vw + 170px);
      margin-top: -5vw; }
      article section.s-recommend > p {
        text-align: center; }
      article section.s-recommend .container {
        margin: 70px 0 0; }
        article section.s-recommend .container::before {
          content: "";
          display: block;
          width: calc(50% + 480px);
          height: 100%;
          background: rgba(255, 255, 255, 0.8);
          border-radius: 100px 0 0 100px;
          position: absolute;
          right: 0;
          top: 0; }
        article section.s-recommend .container-inner {
          width: 980px;
          margin: 0 auto;
          padding: 75px 0 75px 95px;
          position: relative; }
          article section.s-recommend .container-inner ul {
            display: flex;
            justify-content: space-between;
            flex-wrap: wrap;
            gap: 20px;
            position: relative;
            z-index: 1; }
            article section.s-recommend .container-inner ul li {
              width: 430px;
              font-size: 21px;
              font-weight: 500;
              color: #7a6f71;
              line-height: 1.4;
              background: url(/assets/gynecology/images/check01.svg) left 3px/28px auto no-repeat;
              padding: 0 0 0 40px; }
      @media screen and (max-width: 979px) {
        article section.s-recommend {
          padding: 12vw 0 17vw; }
          article section.s-recommend > p {
            padding: 0 2.5vw; }
          article section.s-recommend .container {
            margin: 5vw 0 0; }
            article section.s-recommend .container::before {
              width: 85vw;
              border-radius: 8vw 0 0 8vw; }
            article section.s-recommend .container-inner {
              width: 85vw;
              margin: 0 0 0 auto;
              padding: 5vw 0 5vw 5vw; }
              article section.s-recommend .container-inner ul {
                gap: 2vw 0; }
                article section.s-recommend .container-inner ul li {
                  width: 100%;
                  font-size: 3.5vw;
                  background: url(/assets/gynecology/images/check01.svg) left 0.5vw/4vw auto no-repeat;
                  padding: 0 0 0 6vw; } }
    article section.s-enquete {
      padding: 7vw 0 8vw;
      padding: calc(5vw + 60px) 0 calc(5vw + 170px);
      margin-top: -5vw; }
      article section.s-enquete .container {
        width: 980px;
        margin: 0 auto; }
        article section.s-enquete .container > header {
          display: flex;
          justify-content: center;
          align-items: center; }
          article section.s-enquete .container > header h2 {
            font-family: "Shippori Mincho", serif;
            font-weight: 600;
            font-style: normal;
            font-size: 35px;
            line-height: 1.4;
            text-align: center;
            margin: 0 0 50px; }
            article section.s-enquete .container > header h2 em {
              display: inline-flex;
              align-items: flex-end;
              font-size: 65px;
              line-height: 1.1;
              color: #fff;
              background: #dda1d5;
              background: linear-gradient(90deg, #dda1d5 4%, #f897aa 100%);
              padding: 0 12px 0.1em;
              margin: 0 0.1em; }
              article section.s-enquete .container > header h2 em > span {
                display: inline-flex;
                font-size: 45px;
                padding: 0 0 0.15em; }
            article section.s-enquete .container > header h2 > span {
              font-size: 45px;
              color: #b874af; }
        article section.s-enquete .container ul {
          margin: 100px 0 0; }
          article section.s-enquete .container ul li {
            background: #fff;
            border: 1px solid #a585a1;
            border-radius: 80px 0;
            box-shadow: 22px 22px 27px rgba(199, 143, 157, 0.75);
            padding: 25px; }
            article section.s-enquete .container ul li + li {
              margin-top: 100px; }
            article section.s-enquete .container ul li .inner {
              background: #f8f7f8;
              border-radius: 55px 0;
              padding: 1px 30px 50px 35px;
              position: relative; }
              article section.s-enquete .container ul li .inner > header {
                display: flex;
                justify-content: center;
                align-items: center;
                width: 100%;
                margin: -55px 0 55px; }
                article section.s-enquete .container ul li .inner > header h3 {
                  height: 69px;
                  position: relative; }
                  article section.s-enquete .container ul li .inner > header h3::before {
                    content: "";
                    display: block;
                    width: 100%;
                    height: 100%;
                    background: #ad779d;
                    -webkit-clip-path: polygon(0 0, calc(100% - 30px) 0, 100% 100%, 30px 100%);
                            clip-path: polygon(0 0, calc(100% - 30px) 0, 100% 100%, 30px 100%);
                    position: absolute;
                    left: 0;
                    top: 0; }
                  article section.s-enquete .container ul li .inner > header h3 span {
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    width: 100%;
                    height: 100%;
                    font-family: "Shippori Mincho", serif;
                    font-weight: 600;
                    font-style: normal;
                    font-size: 28px;
                    color: #fff;
                    line-height: 1.4;
                    text-align: center;
                    background: #d998c6;
                    -webkit-clip-path: polygon(30px 0, 100% 0, calc(100% - 30px) 100%, 0 100%);
                            clip-path: polygon(30px 0, 100% 0, calc(100% - 30px) 100%, 0 100%);
                    padding: 0 80px 2px;
                    position: relative; }
              article section.s-enquete .container ul li .inner .contents01 {
                display: flex;
                justify-content: space-between; }
                article section.s-enquete .container ul li .inner .contents01 .img {
                  width: 520px; }
                article section.s-enquete .container ul li .inner .contents01 .text {
                  flex: 1; }
                  article section.s-enquete .container ul li .inner .contents01 .text p {
                    font-size: 18px; }
      @media screen and (max-width: 979px) {
        article section.s-enquete {
          padding: 12vw 0 17vw; }
          article section.s-enquete .container {
            width: 95%; }
            article section.s-enquete .container > header h2 {
              font-size: 4vw;
              margin: 0 0 5vw; }
              article section.s-enquete .container > header h2 em {
                font-size: 7vw;
                padding: 0 1.5vw 0.1em; }
                article section.s-enquete .container > header h2 em > span {
                  font-size: 4.5vw; }
              article section.s-enquete .container > header h2 > span {
                font-size: 5vw; }
            article section.s-enquete .container ul {
              margin: 10vw 0 0; }
              article section.s-enquete .container ul li {
                border-radius: 10vw 0;
                box-shadow: 2vw 2vw 3vw rgba(199, 143, 157, 0.75);
                padding: 3vw; }
                article section.s-enquete .container ul li + li {
                  margin-top: 10vw; }
                article section.s-enquete .container ul li .inner {
                  border-radius: 7vw 0;
                  padding: 1px 3vw 5vw 4vw; }
                  article section.s-enquete .container ul li .inner > header {
                    margin: -7vw 0 5vw; }
                    article section.s-enquete .container ul li .inner > header h3 {
                      height: 10vw; }
                      article section.s-enquete .container ul li .inner > header h3::before {
                        -webkit-clip-path: polygon(0 0, calc(100% - 5vw) 0, 100% 100%, 5vw 100%);
                                clip-path: polygon(0 0, calc(100% - 5vw) 0, 100% 100%, 5vw 100%); }
                      article section.s-enquete .container ul li .inner > header h3 span {
                        font-size: 4vw;
                        -webkit-clip-path: polygon(5vw 0, 100% 0, calc(100% - 5vw) 100%, 0 100%);
                                clip-path: polygon(5vw 0, 100% 0, calc(100% - 5vw) 100%, 0 100%);
                        padding: 0 9vw 0.25vw; }
                  article section.s-enquete .container ul li .inner .contents01 {
                    flex-direction: column;
                    gap: 3vw 0; }
                    article section.s-enquete .container ul li .inner .contents01 .img {
                      width: 100%; }
                    article section.s-enquete .container ul li .inner .contents01 .text {
                      flex: 1; }
                      article section.s-enquete .container ul li .inner .contents01 .text p {
                        font-size: 3.5vw; } }
    article section.s-menu {
      padding: 7vw 0 8vw;
      padding: calc(5vw + 60px) 0 calc(5vw + 110px);
      margin-top: -5vw; }
      article section.s-menu .container > ul {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        width: 980px;
        margin: 0 auto; }
        article section.s-menu .container > ul > li {
          width: 470px; }
          article section.s-menu .container > ul > li .contents {
            background: #fff;
            border: 1px solid #cabfc1;
            border-radius: 50px 0;
            padding: 35px 40px 60px;
            box-shadow: 7px 7px 18px rgba(199, 154, 167, 0.2); }
            article section.s-menu .container > ul > li .contents + .contents {
              margin-top: 35px; }
            article section.s-menu .container > ul > li .contents h3 {
              font-family: "Shippori Mincho", serif;
              font-weight: 600;
              font-style: normal;
              font-size: 24px;
              line-height: 1.5;
              color: #f097ae;
              text-align: center;
              margin: 0 0 25px; }
            article section.s-menu .container > ul > li .contents > p {
              font-size: 18px;
              margin: 0 0 30px; }
            article section.s-menu .container > ul > li .contents > ul li + li {
              margin-top: 10px; }
            article section.s-menu .container > ul > li .contents > ul li a {
              display: block;
              width: 100%;
              font-size: 14px;
              text-align: center;
              background: #fbf3f4;
              border-radius: 10px;
              padding: 18px 25px;
              text-decoration: none;
              position: relative; }
              article section.s-menu .container > ul > li .contents > ul li a::before {
                content: "";
                width: 20px;
                height: 100%;
                display: block;
                background: url(/assets/gynecology/images/arrow01.svg) left center/6px auto no-repeat;
                position: absolute;
                right: 0;
                top: 0; }
              article section.s-menu .container > ul > li .contents > ul li a .new {
                padding-left: 40px;
                position: relative; }
                article section.s-menu .container > ul > li .contents > ul li a .new::before {
                  content: "";
                  display: block;
                  width: 35px;
                  height: 20px;
                  background: url(/assets/nose/images/icon-new.gif) left center/100% auto no-repeat;
                  position: absolute;
                  left: 0;
                  top: 50%;
                  transform: translate(0, -50%); }
      @media screen and (max-width: 979px) {
        article section.s-menu {
          padding: 12vw 0 17vw; }
          article section.s-menu .container > ul {
            width: 90%;
            flex-direction: column;
            gap: 4vw 0; }
            article section.s-menu .container > ul > li {
              width: 100%; }
              article section.s-menu .container > ul > li .contents {
                border-radius: 6vw 0;
                padding: 4vw 3vw 5vw;
                box-shadow: 1vw 1vw 2vw rgba(199, 154, 167, 0.2); }
                article section.s-menu .container > ul > li .contents + .contents {
                  margin-top: 4vw; }
                article section.s-menu .container > ul > li .contents h3 {
                  font-size: 4.5vw;
                  line-height: 1.3;
                  margin: 0 0 3.5vw; }
                article section.s-menu .container > ul > li .contents > p {
                  font-size: 3.5vw;
                  margin: 0 0 3.5vw; }
                article section.s-menu .container > ul > li .contents > ul li + li {
                  margin-top: 1.5vw; }
                article section.s-menu .container > ul > li .contents > ul li a {
                  font-size: 3.5vw;
                  border-radius: 2vw;
                  padding: 2.5vw 3.5vw; }
                  article section.s-menu .container > ul > li .contents > ul li a::before {
                    width: 3.5vw;
                    background-size: 1.5vw auto; }
                  article section.s-menu .container > ul > li .contents > ul li a .new {
                    padding-left: 8vw; }
                    article section.s-menu .container > ul > li .contents > ul li a .new::before {
                      width: 7vw;
                      height: 5vw; }
                  article section.s-menu .container > ul > li .contents > ul li a ruby rt {
                    transform: translateY(0.5em); } }
    article section.s-price {
      padding: 7vw 0 8vw;
      padding: calc(5vw + 60px) 0 calc(5vw + 110px);
      margin-top: -5vw; }
      article section.s-price .container {
        width: 980px;
        margin: 0 auto; }
        article section.s-price .container .price-part {
          margin-top: 50px; }
          article section.s-price .container .price-part > ul {
            display: flex;
            justify-content: space-between;
            align-items: flex-start; }
            article section.s-price .container .price-part > ul > li {
              width: 470px;
              color: #7a6f71;
              background: #fff;
              border-radius: 20px;
              padding: 15px; }
              article section.s-price .container .price-part > ul > li .part-index {
                text-align: center;
                margin: 0 0 25px; }
                article section.s-price .container .price-part > ul > li .part-index p {
                  display: flex;
                  justify-content: center;
                  align-items: center;
                  font-size: 28px;
                  font-weight: 500; }
                  article section.s-price .container .price-part > ul > li .part-index p em {
                    display: inline-flex;
                    align-items: flex-end;
                    font-family: "Shippori Mincho", serif;
                    font-weight: 600;
                    font-style: normal;
                    font-size: 58px;
                    color: #fff;
                    line-height: 0.9;
                    background: #f897aa;
                    background: linear-gradient(90deg, #f897aa 4%, #e79bc1 49%, #dda1d5 100%);
                    padding: 0 0.15em 0.15em;
                    margin: 0 0 0 0.15em; }
                    article section.s-price .container .price-part > ul > li .part-index p em span {
                      font-size: 38px; }
              article section.s-price .container .price-part > ul > li .part-inner {
                font-weight: 500;
                text-align: center;
                background: #fafafa;
                border-radius: 20px;
                padding: 20px 30px 30px; }
                article section.s-price .container .price-part > ul > li .part-inner > ul {
                  margin: 15px 0 0; }
                  article section.s-price .container .price-part > ul > li .part-inner > ul > li {
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    gap: 0 10px; }
                    article section.s-price .container .price-part > ul > li .part-inner > ul > li + li {
                      margin-top: 10px; }
                    article section.s-price .container .price-part > ul > li .part-inner > ul > li .part-inner-left {
                      flex: 1;
                      display: flex;
                      justify-content: flex-end;
                      text-align: right; }
                      article section.s-price .container .price-part > ul > li .part-inner > ul > li .part-inner-left p .frame {
                        border: 1px solid #7a6f71;
                        padding: 0 10px 2px; }
                    article section.s-price .container .price-part > ul > li .part-inner > ul > li .part-inner-right {
                      display: flex;
                      justify-content: flex-start;
                      width: 40%;
                      text-align: left; }
                      article section.s-price .container .price-part > ul > li .part-inner > ul > li .part-inner-right p {
                        color: #ed8491; }
                        article section.s-price .container .price-part > ul > li .part-inner > ul > li .part-inner-right p.strike {
                          position: relative; }
                          article section.s-price .container .price-part > ul > li .part-inner > ul > li .part-inner-right p.strike::before {
                            content: "";
                            display: block;
                            background: #ed8491;
                            width: 100%;
                            height: 2px;
                            position: absolute;
                            top: 49%;
                            left: 0; }
                article section.s-price .container .price-part > ul > li .part-inner-total {
                  display: flex;
                  justify-content: center;
                  align-items: center;
                  gap: 0 10px;
                  border-top: 1px dashed #7a6f71;
                  margin: 35px 0 0;
                  padding: 40px 0 0;
                  position: relative; }
                  article section.s-price .container .price-part > ul > li .part-inner-total::before {
                    content: "";
                    display: block;
                    width: 35px;
                    height: 40px;
                    background: #ed8491;
                    -webkit-clip-path: polygon(25% 0, 75% 0, 75% 65%, 100% 65%, 50% 100%, 0 65%, 25% 65%);
                            clip-path: polygon(25% 0, 75% 0, 75% 65%, 100% 65%, 50% 100%, 0 65%, 25% 65%);
                    position: absolute;
                    left: 50%;
                    top: -12px;
                    transform: translate(-50%, 0); }
                  article section.s-price .container .price-part > ul > li .part-inner-total p {
                    color: #ed8491; }
                    article section.s-price .container .price-part > ul > li .part-inner-total p.frame {
                      border: 1px solid #ed8491;
                      padding: 0 7px; }
                    article section.s-price .container .price-part > ul > li .part-inner-total p.price {
                      font-size: 28px;
                      line-height: 1;
                      font-weight: 500;
                      padding: 0 0 0.1em; }
          article section.s-price .container .price-part .caution {
            font-size: 12px;
            font-weight: 500;
            text-align: center;
            margin: 10px 0 0; }
        article section.s-price .container .price-main {
          margin-top: 50px; }
          article section.s-price .container .price-main-index {
            font-family: "Shippori Mincho", serif;
            font-weight: 600;
            font-style: normal;
            font-size: 30px;
            text-align: center;
            line-height: 1.2;
            margin: 0 0 20px; }
          article section.s-price .container .price-main > ul > li {
            color: #7a6f71;
            background: #fff;
            border-radius: 20px; }
            article section.s-price .container .price-main > ul > li + li {
              margin-top: 40px; }
            article section.s-price .container .price-main > ul > li.banner {
              background: none;
              border-radius: 0; }
            article section.s-price .container .price-main > ul > li h3 {
              display: flex;
              justify-content: flex-start;
              align-items: center;
              height: 80px;
              font-size: 24px;
              font-weight: 500;
              color: #fff;
              line-height: 1.4;
              background: #f67887;
              border-radius: 20px 20px 0 0;
              padding: 10px 40px; }
              article section.s-price .container .price-main > ul > li h3 a {
                color: #fff; }
            article section.s-price .container .price-main > ul > li .price-main-inner {
              padding: 20px 35px 40px; }
              article section.s-price .container .price-main > ul > li .price-main-inner > ul > li {
                display: flex;
                justify-content: center;
                align-items: center;
                padding: 12px 50px 12px 20px; }
                article section.s-price .container .price-main > ul > li .price-main-inner > ul > li .price-main-left {
                  width: 240px;
                  text-align: center; }
                article section.s-price .container .price-main > ul > li .price-main-inner > ul > li .price-main-right {
                  display: flex;
                  justify-content: flex-end;
                  align-items: center;
                  gap: 0 20px;
                  flex: 1; }
                  article section.s-price .container .price-main > ul > li .price-main-inner > ul > li .price-main-right .frame {
                    min-width: 200px;
                    font-size: 22px;
                    font-weight: 500;
                    text-align: center;
                    border: 1px solid #7a6f71;
                    padding: 0 7px; }
                  article section.s-price .container .price-main > ul > li .price-main-inner > ul > li .price-main-right .price {
                    font-family: "Shippori Mincho", serif;
                    font-weight: 600;
                    font-style: normal;
                    font-size: 70px;
                    line-height: 0.9;
                    padding: 0 0.15em 0.15em; }
                    article section.s-price .container .price-main > ul > li .price-main-inner > ul > li .price-main-right .price > span {
                      font-size: 38px;
                      position: relative; }
                      article section.s-price .container .price-main > ul > li .price-main-inner > ul > li .price-main-right .price > span > span {
                        font-size: 15px;
                        white-space: nowrap;
                        position: absolute;
                        left: 50%;
                        transform: translate(-50%, 0);
                        bottom: 45px; }
                article section.s-price .container .price-main > ul > li .price-main-inner > ul > li.monitor .price-main-right {
                  color: #b874af; }
                  article section.s-price .container .price-main > ul > li .price-main-inner > ul > li.monitor .price-main-right .frame {
                    border-color: #b874af; }
                article section.s-price .container .price-main > ul > li .price-main-inner > ul > li.normal {
                  margin-top: 15px; }
                  article section.s-price .container .price-main > ul > li .price-main-inner > ul > li.normal + li {
                    margin-top: 15px; }
                article section.s-price .container .price-main > ul > li .price-main-inner > ul > li.campaign {
                  background: #fef7be;
                  margin-top: 15px; }
                  article section.s-price .container .price-main > ul > li .price-main-inner > ul > li.campaign + li {
                    margin-top: 15px; }
                  article section.s-price .container .price-main > ul > li .price-main-inner > ul > li.campaign .price-main-right {
                    color: #ed8491; }
                    article section.s-price .container .price-main > ul > li .price-main-inner > ul > li.campaign .price-main-right .frame {
                      border-color: #ed8491; }
              article section.s-price .container .price-main > ul > li .price-main-inner .price-ribbon {
                display: flex;
                justify-content: center;
                align-items: center;
                width: 529px;
                height: 97px;
                font-size: 36px;
                font-weight: 600;
                color: #fb637e;
                letter-spacing: 2px;
                background: url(/assets/gynecology/laser/special-whitening/images/price_ribbon.png) center top/100% auto no-repeat;
                filter: drop-shadow(2px 2px 2px rgba(160, 160, 160, 0.4));
                position: relative;
                margin: 10px auto 20px;
                padding: 0 0 18px; }
                article section.s-price .container .price-main > ul > li .price-main-inner .price-ribbon span {
                  display: inline-flex;
                  font-family: "Libre Baskerville", serif;
                  font-optical-sizing: auto;
                  font-weight: 400;
                  font-style: normal;
                  font-size: 13px;
                  line-height: 1;
                  color: #fefe9d;
                  position: absolute;
                  left: 67px;
                  top: 11px;
                  transform: rotate(-30deg); }
        article section.s-price .container .price-btn {
          display: flex;
          justify-content: center;
          align-items: center;
          margin: 45px 0 0; }
          article section.s-price .container .price-btn p {
            width: 600px;
            height: 110px;
            background: #b5c1e6;
            background: linear-gradient(0deg, #b5c1e6 4%, #b0a2d8 100%);
            border-radius: 100px;
            padding: 10px;
            box-shadow: 13px 13px 21px rgba(194, 141, 155, 0.51); }
            article section.s-price .container .price-btn p a {
              display: flex;
              justify-content: center;
              align-items: center;
              width: 100%;
              height: 100%;
              background: #b0a2d8;
              background: linear-gradient(0deg, #b0a2d8 4%, #b5c1e6 100%);
              border-radius: 100px;
              text-decoration: none;
              position: relative;
              overflow: hidden; }
              article section.s-price .container .price-btn p a::before {
                content: "";
                display: block;
                width: 120%;
                height: 80%;
                background: rgba(165, 177, 215, 0.38);
                border-radius: 100%;
                position: absolute;
                left: 50%;
                bottom: 50%;
                transform: translate(-50%, 0);
                mix-blend-mode: overlay; }
              article section.s-price .container .price-btn p a::after {
                content: "";
                display: block;
                width: 100%;
                height: 100%;
                box-shadow: inset 0 0 5px rgba(126, 136, 180, 0.68);
                border-radius: 100px;
                position: absolute;
                left: 0;
                top: 0;
                mix-blend-mode: multiply; }
              article section.s-price .container .price-btn p a span {
                display: flex;
                justify-content: center;
                align-items: center;
                width: 100%;
                height: 100%;
                font-size: 22px;
                font-weight: 500;
                filter: drop-shadow(0 0 5px rgba(121, 137, 197, 0.5)) drop-shadow(0 0 5px rgba(121, 137, 197, 0.5)) drop-shadow(0 0 5px rgba(121, 137, 197, 0.5)) drop-shadow(0 0 5px rgba(121, 137, 197, 0.5));
                color: #fff;
                position: relative; }
                article section.s-price .container .price-btn p a span::before {
                  content: "";
                  display: block;
                  width: 45px;
                  height: 100%;
                  background: url(/assets/gynecology/images/arrow01.svg) left center/10px auto no-repeat;
                  filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(49deg) brightness(103%) contrast(103%);
                  position: absolute;
                  right: 0;
                  top: 0; }
        article section.s-price .container .price-banner {
          margin: 60px 0 0; }
          article section.s-price .container .price-banner .heading-image + .heading-image {
            margin-top: 20px; }
      @media screen and (max-width: 979px) {
        article section.s-price {
          padding: 12vw 0 17vw; }
          article section.s-price .container {
            width: 95%; }
            article section.s-price .container .price-part {
              margin-top: 6vw; }
              article section.s-price .container .price-part > ul {
                flex-direction: column; }
                article section.s-price .container .price-part > ul > li {
                  width: 100%;
                  border-radius: 3vw;
                  padding: 3vw; }
                  article section.s-price .container .price-part > ul > li + li {
                    margin-top: 4vw; }
                  article section.s-price .container .price-part > ul > li .part-index {
                    margin: 0 0 3vw; }
                    article section.s-price .container .price-part > ul > li .part-index p {
                      font-size: 4vw; }
                      article section.s-price .container .price-part > ul > li .part-index p em {
                        font-size: 7vw; }
                        article section.s-price .container .price-part > ul > li .part-index p em span {
                          font-size: 5vw; }
                  article section.s-price .container .price-part > ul > li .part-inner {
                    font-size: 4vw;
                    border-radius: 3vw;
                    padding: 3vw 4vw 4vw; }
                    article section.s-price .container .price-part > ul > li .part-inner > ul {
                      margin: 2vw 0 0; }
                      article section.s-price .container .price-part > ul > li .part-inner > ul > li {
                        gap: 0 2vw; }
                        article section.s-price .container .price-part > ul > li .part-inner > ul > li + li {
                          margin-top: 1.5vw; }
                        article section.s-price .container .price-part > ul > li .part-inner > ul > li .part-inner-left p .frame {
                          border: 1px solid #7a6f71;
                          padding: 0 2vw 0.5vw; }
                    article section.s-price .container .price-part > ul > li .part-inner-total {
                      gap: 0 2vw;
                      margin: 5vw 0 0;
                      padding: 6vw 0 0; }
                      article section.s-price .container .price-part > ul > li .part-inner-total::before {
                        width: 6vw;
                        height: 7vw;
                        top: -3vw; }
                      article section.s-price .container .price-part > ul > li .part-inner-total p.frame {
                        padding: 0 1vw; }
                      article section.s-price .container .price-part > ul > li .part-inner-total p.price {
                        font-size: 4.5vw; }
              article section.s-price .container .price-part .caution {
                font-size: 3vw;
                margin: 1.5vw 0 0; }
            article section.s-price .container .price-main {
              margin-top: 7vw; }
              article section.s-price .container .price-main-index {
                font-size: 5vw;
                margin: 0 0 3vw; }
              article section.s-price .container .price-main > ul > li {
                border-radius: 3vw; }
                article section.s-price .container .price-main > ul > li + li {
                  margin-top: 5vw; }
                article section.s-price .container .price-main > ul > li h3 {
                  height: inherit;
                  min-height: 11vw;
                  font-size: 4vw;
                  line-height: 1.3;
                  border-radius: 3vw 3vw 0 0;
                  padding: 1vw 5vw; }
                article section.s-price .container .price-main > ul > li .price-main-inner {
                  padding: 3vw 4vw 4vw; }
                  article section.s-price .container .price-main > ul > li .price-main-inner > ul > li {
                    padding: 2vw 0; }
                    article section.s-price .container .price-main > ul > li .price-main-inner > ul > li .price-main-left {
                      width: 20vw; }
                    article section.s-price .container .price-main > ul > li .price-main-inner > ul > li .price-main-right {
                      gap: 0 3vw; }
                      article section.s-price .container .price-main > ul > li .price-main-inner > ul > li .price-main-right .frame {
                        min-width: 30vw;
                        font-size: 3.5vw;
                        padding: 0 1vw; }
                      article section.s-price .container .price-main > ul > li .price-main-inner > ul > li .price-main-right .price {
                        font-size: 9vw; }
                        article section.s-price .container .price-main > ul > li .price-main-inner > ul > li .price-main-right .price > span {
                          font-size: 5vw; }
                          article section.s-price .container .price-main > ul > li .price-main-inner > ul > li .price-main-right .price > span > span {
                            font-size: 2.5vw;
                            bottom: 6.5vw; }
                    article section.s-price .container .price-main > ul > li .price-main-inner > ul > li.monitor {
                      flex-direction: column;
                      gap: 1vw 0; }
                      article section.s-price .container .price-main > ul > li .price-main-inner > ul > li.monitor .price-main-left {
                        width: 100%; }
                    article section.s-price .container .price-main > ul > li .price-main-inner > ul > li.normal {
                      flex-direction: column;
                      gap: 1vw 0;
                      margin-top: 2.5vw;
                      padding: 2vw; }
                      article section.s-price .container .price-main > ul > li .price-main-inner > ul > li.normal + li {
                        margin-top: 2.5vw; }
                      article section.s-price .container .price-main > ul > li .price-main-inner > ul > li.normal .price-main-left {
                        width: 100%; }
                    article section.s-price .container .price-main > ul > li .price-main-inner > ul > li.campaign {
                      flex-direction: column;
                      gap: 1vw 0;
                      margin-top: 2.5vw;
                      padding: 2vw; }
                      article section.s-price .container .price-main > ul > li .price-main-inner > ul > li.campaign + li {
                        margin-top: 2.5vw; }
                      article section.s-price .container .price-main > ul > li .price-main-inner > ul > li.campaign .price-main-left {
                        width: 100%; }
                  article section.s-price .container .price-main > ul > li .price-main-inner .price-ribbon {
                    width: 80vw;
                    height: 15vw;
                    font-size: 5vw;
                    margin: 1vw auto 2vw;
                    padding: 0 0 3.5vw; }
                    article section.s-price .container .price-main > ul > li .price-main-inner .price-ribbon span {
                      font-size: 2.5vw;
                      left: 10vw;
                      top: 1.5vw; }
            article section.s-price .container .price-btn {
              margin: 6vw 0 0; }
              article section.s-price .container .price-btn p {
                width: 85vw;
                height: 17vw;
                padding: 1vw;
                box-shadow: 2vw 2vw 3vw rgba(194, 141, 155, 0.51); }
                article section.s-price .container .price-btn p a::after {
                  box-shadow: inset 0 0 1vw rgba(126, 136, 180, 0.68); }
                article section.s-price .container .price-btn p a span {
                  font-size: 4vw;
                  padding: 0 0 1vw;
                  filter: drop-shadow(0 0 1vw rgba(121, 137, 197, 0.5)) drop-shadow(0 0 1vw rgba(121, 137, 197, 0.5)) drop-shadow(0 0 1vw rgba(121, 137, 197, 0.5)) drop-shadow(0 0 1vw rgba(121, 137, 197, 0.5)); }
                  article section.s-price .container .price-btn p a span::before {
                    width: 6vw;
                    background-size: 2vw auto; }
            article section.s-price .container .price-banner {
              margin: 7vw 0 0; }
              article section.s-price .container .price-banner .heading-image + .heading-image {
                margin-top: 2.5vw; } }
    article section.s-point {
      padding: 7vw 0 8vw;
      padding: calc(5vw + 60px) 0 calc(5vw + 170px);
      margin-top: -5vw; }
      article section.s-point .container {
        position: relative; }
        article section.s-point .container::before {
          content: "";
          width: 980px;
          height: 100%;
          background: #f7f7f7;
          border-radius: 35px;
          position: absolute;
          left: 50%;
          top: 0;
          transform: translate(-50%, 0); }
        article section.s-point .container .grid {
          display: grid;
          grid-template-columns: 1fr 390px 590px 1fr;
          grid-template-rows: auto;
          padding: 50px 0 90px;
          position: relative; }
          article section.s-point .container .grid + .grid {
            margin-top: 55px; }
          article section.s-point .container .grid-img {
            display: flex;
            align-items: center;
            grid-column: 1 / 3;
            grid-row: 1 / 2;
            background: #f7f7f7;
            position: relative; }
            article section.s-point .container .grid-img .img {
              width: 100%;
              height: 300px;
              position: absolute;
              right: 0;
              top: 50%;
              transform: translate(0, -50%);
              border-radius: 0 70px 70px 0; }
              article section.s-point .container .grid-img .img.img01 {
                background: url(/assets/gynecology/images/point01.jpg) center center/cover no-repeat; }
              article section.s-point .container .grid-img .img.img02 {
                background: url(/assets/gynecology/images/point02.jpg) left center/cover no-repeat; }
              article section.s-point .container .grid-img .img.img03 {
                background: url(/assets/gynecology/images/point03.jpg) center center/cover no-repeat; }
          article section.s-point .container .grid-text {
            display: flex;
            justify-content: center;
            align-items: flex-start;
            flex-direction: column;
            min-height: 300px;
            grid-column: 3 / 4;
            grid-row: 1 / 2;
            padding: 0 60px 0 70px; }
            article section.s-point .container .grid-text .num {
              display: flex;
              justify-content: flex-start;
              align-items: center;
              width: 100%;
              position: relative;
              margin: 0 0 10px; }
              article section.s-point .container .grid-text .num::before {
                content: "";
                display: block;
                width: 100%;
                height: 1px;
                background: #dbcfd0;
                position: absolute;
                top: 50%;
                left: 0; }
              article section.s-point .container .grid-text .num > span {
                display: inline-flex;
                justify-content: flex-start;
                align-items: center;
                font-family: sitka-text, "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
                font-weight: 400;
                font-style: normal;
                font-size: 20px;
                line-height: 1;
                color: #dbcfd0;
                background: #f7f7f7;
                padding: 0 1.25em 0 0;
                position: relative; }
                article section.s-point .container .grid-text .num > span > span {
                  display: inline-flex;
                  justify-content: flex-start;
                  align-items: center;
                  font-size: 60px;
                  line-height: 0.4;
                  padding: 0 0 0.3em 0.1em; }
            article section.s-point .container .grid-text h3 {
              font-family: "Shippori Mincho", serif;
              font-weight: 600;
              font-style: normal;
              font-size: 26px;
              color: #ed8491;
              margin: 0 0 7px; }
            article section.s-point .container .grid-text .btn {
              width: 100%;
              display: flex;
              justify-content: center;
              align-items: center;
              margin: 20px 0 0; }
              article section.s-point .container .grid-text .btn a {
                display: flex;
                justify-content: center;
                align-items: center;
                min-width: 400px;
                min-height: 50px;
                padding: 5px 40px 7px;
                color: #fff;
                line-height: 1.3;
                background: #ed8491;
                text-decoration: none;
                border-radius: 100px;
                position: relative; }
                article section.s-point .container .grid-text .btn a::before {
                  content: "";
                  width: 35px;
                  height: 100%;
                  display: block;
                  background: url(/assets/gynecology/images/arrow01.svg) left center/8px auto no-repeat;
                  filter: brightness(0) saturate(100%) invert(100%) sepia(1%) saturate(2%) hue-rotate(227deg) brightness(104%) contrast(100%);
                  position: absolute;
                  right: 0;
                  top: 0; }
          article section.s-point .container .grid.reverse {
            grid-template-columns: 1fr 590px 390px 1fr; }
            article section.s-point .container .grid.reverse .grid-img {
              grid-column: 3 / 5; }
              article section.s-point .container .grid.reverse .grid-img .img {
                border-radius: 70px 0 0 70px;
                right: inherit;
                left: 0; }
            article section.s-point .container .grid.reverse .grid-text {
              grid-column: 2 / 3; }
      @media screen and (max-width: 979px) {
        article section.s-point {
          padding: 12vw 0 17vw; }
          article section.s-point .container {
            padding-bottom: 5vw; }
            article section.s-point .container::before {
              width: 95vw;
              border-radius: 4vw; }
            article section.s-point .container .grid {
              grid-template-columns: 1fr 84vw 1vw 1fr;
              grid-template-rows: auto 40vw;
              padding: 3vw 0; }
              article section.s-point .container .grid + .grid {
                margin-top: 0; }
              article section.s-point .container .grid-img {
                grid-row: 2 / 3; }
                article section.s-point .container .grid-img .img {
                  height: 100%;
                  border-radius: 0 9vw 9vw 0; }
              article section.s-point .container .grid-text {
                grid-column: 2 / 4;
                min-height: inherit;
                padding: 0 0 5vw; }
                article section.s-point .container .grid-text .num {
                  margin: 0 0 1.5vw; }
                  article section.s-point .container .grid-text .num > span {
                    font-size: 3.5vw; }
                    article section.s-point .container .grid-text .num > span > span {
                      font-size: 10vw; }
                article section.s-point .container .grid-text h3 {
                  font-size: 4.5vw;
                  margin: 0 0 1vw; }
                article section.s-point .container .grid-text .btn {
                  margin: 3vw 0 0; }
                  article section.s-point .container .grid-text .btn a {
                    min-width: 65vw;
                    min-height: 8vw;
                    padding: 1vw 4vw 1.2vw; }
                    article section.s-point .container .grid-text .btn a::before {
                      width: 4vw;
                      background-size: 1.5vw auto; }
              article section.s-point .container .grid.reverse {
                grid-template-columns: 1fr 10vw 75vw 1fr; }
                article section.s-point .container .grid.reverse .grid-img .img {
                  border-radius: 9vw 0 0 9vw; }
                article section.s-point .container .grid.reverse .grid-text {
                  grid-column: 2 / 4; } }
    article section.s-reason {
      padding: 7vw 0 8vw;
      padding: calc(5vw + 60px) 0 calc(5vw + 120px);
      margin-top: -5vw; }
      article section.s-reason > .container {
        width: 980px;
        box-shadow: 22px 22px 27px rgba(199, 143, 157, 0.75);
        border: 2px solid #fff;
        border-radius: 80px 0;
        padding: 55px 40px;
        margin: 0 auto; }
        article section.s-reason > .container > ul > li {
          display: flex; }
          article section.s-reason > .container > ul > li + li {
            margin-top: 45px; }
          article section.s-reason > .container > ul > li .img {
            width: 440px; }
            article section.s-reason > .container > ul > li .img img {
              border-radius: 40px; }
          article section.s-reason > .container > ul > li .text {
            flex: 1;
            padding: 0 0 0 40px; }
            article section.s-reason > .container > ul > li .text > header {
              display: flex;
              justify-content: flex-start;
              align-items: center;
              gap: 0 10px;
              margin: 0 0 5px; }
              article section.s-reason > .container > ul > li .text > header .num-wrap {
                display: flex;
                justify-content: center;
                align-items: center;
                flex-direction: column;
                gap: 0.25em 0;
                width: 102px;
                height: 102px;
                background: url(/assets/gynecology/images/reason02.png) center top/100% auto no-repeat;
                padding: 0 0 0.4em; }
                article section.s-reason > .container > ul > li .text > header .num-wrap span {
                  font-family: sitka-text, "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
                  font-weight: 400;
                  font-style: normal;
                  color: #ed8491;
                  line-height: 0.4;
                  padding: 0 0 0.3em 0.1em; }
                  article section.s-reason > .container > ul > li .text > header .num-wrap span.en {
                    font-size: 14px; }
                  article section.s-reason > .container > ul > li .text > header .num-wrap span.num {
                    font-size: 43px; }
              article section.s-reason > .container > ul > li .text > header h3 {
                font-family: "Shippori Mincho", serif;
                font-weight: 600;
                font-style: normal;
                color: #ed8491;
                font-size: 26px;
                line-height: 1.3;
                padding: 0 0 0.2em; }
          article section.s-reason > .container > ul > li:nth-child(even) {
            flex-direction: row-reverse; }
            article section.s-reason > .container > ul > li:nth-child(even) .text {
              padding: 0 30px 0 0; }
      article section.s-reason section.exDoctor {
        width: 980px;
        box-shadow: 22px 22px 27px rgba(199, 143, 157, 0.75);
        border: 2px solid #fff;
        border-radius: 40px;
        background: none;
        padding: 15px;
        margin: 100px auto 0; }
        article section.s-reason section.exDoctor .leadDoctor {
          width: 100%;
          margin: 0;
          background: none; }
          article section.s-reason section.exDoctor .leadDoctor .leadDoctorInner {
            width: 100%;
            border-radius: 25px; }
            article section.s-reason section.exDoctor .leadDoctor .leadDoctorInner .leadDoctorIndex {
              margin-left: -33px; }
            article section.s-reason section.exDoctor .leadDoctor .leadDoctorInner .inner .containerWrap.tanaka {
              background-image: url(/assets/gynecology/images/ex_dr_tanaka.png?2026227104133);
              background-color: #fff;
              border: none; }
            article section.s-reason section.exDoctor .leadDoctor .leadDoctorInner .inner .containerWrap.okuda {
              background-image: url(/assets/gynecology/images/ex_dr_okuda.png?2026227104133);
              background-color: #fff;
              border: none; }
      article section.s-reason .banner {
        width: 980px;
        margin: 70px auto 0; }
        article section.s-reason .banner .heading-image + .heading-image {
          margin-top: 20px; }
      @media screen and (max-width: 979px) {
        article section.s-reason {
          padding: 12vw 0 17vw; }
          article section.s-reason > .container {
            width: 90%;
            box-shadow: 3vw 3vw 4vw rgba(199, 143, 157, 0.75);
            border-radius: 9vw 0;
            padding: 5vw 4vw; }
            article section.s-reason > .container > ul > li {
              flex-direction: column-reverse;
              gap: 4vw 0; }
              article section.s-reason > .container > ul > li + li {
                margin-top: 5vw; }
              article section.s-reason > .container > ul > li .img {
                width: 100%;
                text-align: center; }
                article section.s-reason > .container > ul > li .img img {
                  width: 60vw;
                  border-radius: 5vw; }
              article section.s-reason > .container > ul > li .text {
                padding: 0; }
                article section.s-reason > .container > ul > li .text > header {
                  gap: 0 1.5vw;
                  margin: 0 0 1vw; }
                  article section.s-reason > .container > ul > li .text > header .num-wrap {
                    width: 15vw;
                    height: 15vw; }
                    article section.s-reason > .container > ul > li .text > header .num-wrap span.en {
                      font-size: 2.5vw; }
                    article section.s-reason > .container > ul > li .text > header .num-wrap span.num {
                      font-size: 6vw; }
                  article section.s-reason > .container > ul > li .text > header h3 {
                    font-size: 4.5vw; }
              article section.s-reason > .container > ul > li:nth-child(even) {
                flex-direction: column-reverse; }
                article section.s-reason > .container > ul > li:nth-child(even) .text {
                  padding: 0; }
          article section.s-reason section.exDoctor {
            width: 90%;
            box-shadow: 3vw 3vw 4vw rgba(199, 143, 157, 0.75);
            border-radius: 5vw;
            padding: 2vw;
            margin: 10vw auto 0; }
            article section.s-reason section.exDoctor .leadDoctor .leadDoctorInner {
              border-radius: 3vw; }
              article section.s-reason section.exDoctor .leadDoctor .leadDoctorInner .leadDoctorIndex {
                width: 80vw;
                margin-left: -8vw; }
          article section.s-reason .banner {
            width: 95%;
            margin: 8vw auto 0; }
            article section.s-reason .banner .heading-image + .heading-image {
              margin-top: 2.5vw; } }
    article section.s-comment {
      padding: 7vw 0 8vw;
      padding: calc(5vw + 60px) 0 calc(5vw + 120px);
      margin-top: -5vw; }
      article section.s-comment .container {
        display: flex;
        width: 980px;
        margin: 0 auto; }
        article section.s-comment .container .img {
          width: 390px;
          position: relative; }
          article section.s-comment .container .img img {
            max-width: inherit;
            position: absolute;
            top: 0;
            right: 55px;
            pointer-events: none; }
        article section.s-comment .container .text {
          flex: 1; }
          article section.s-comment .container .text p + p {
            margin-top: 1em; }
          article section.s-comment .container .text p.name {
            font-family: "Shippori Mincho", serif;
            font-weight: 600;
            font-style: normal;
            text-align: right; }
            article section.s-comment .container .text p.name em {
              font-size: 30px;
              padding-left: 0.5em; }
      article section.s-comment .banner {
        width: 980px;
        margin: 70px auto 0; }
        article section.s-comment .banner .heading-image + .heading-image {
          margin-top: 20px; }
      @media screen and (max-width: 979px) {
        article section.s-comment {
          padding: 12vw 0 19vw; }
          article section.s-comment .container {
            width: 95%;
            flex-direction: column-reverse;
            margin: 0 auto; }
            article section.s-comment .container .img {
              width: 100%;
              position: absolute;
              left: 0;
              bottom: 0; }
              article section.s-comment .container .img img {
                width: 50vw;
                top: inherit;
                right: inherit;
                left: -8vw;
                bottom: 8vw; }
            article section.s-comment .container .text {
              width: 100%;
              position: relative; }
              article section.s-comment .container .text p:nth-child(3) {
                padding-left: 40vw; }
              article section.s-comment .container .text p.name {
                height: 10vw;
                margin: 3vw 0 0; }
                article section.s-comment .container .text p.name em {
                  font-size: 5vw; }
          article section.s-comment .banner {
            width: 95%;
            margin: 8vw auto 0; }
            article section.s-comment .banner .heading-image + .heading-image {
              margin-top: 2.5vw; } }
    article section.s-flow {
      padding: 7vw 0 8vw;
      padding: calc(5vw + 60px) 0 calc(5vw + 120px);
      margin-top: -5vw; }
      article section.s-flow .container {
        width: 980px;
        margin: 0 auto; }
        article section.s-flow .container ul li {
          display: flex;
          justify-content: flex-end; }
          article section.s-flow .container ul li + li {
            margin-top: 100px;
            position: relative; }
            article section.s-flow .container ul li + li::before {
              content: "";
              width: 100px;
              height: 100px;
              background: url(/assets/gynecology/images/arrow01.svg) center center/18px auto no-repeat;
              filter: brightness(0) saturate(100%) invert(94%) sepia(6%) saturate(299%) hue-rotate(306deg) brightness(91%) contrast(87%);
              position: absolute;
              left: 50%;
              top: -100px;
              transform: translate(-50%, 0) rotate(90deg); }
            article section.s-flow .container ul li + li::after {
              content: "";
              width: 1px;
              height: 100px;
              border-right: 3px dotted #dbcfd0;
              position: absolute;
              left: 50%;
              top: -50px;
              transform: translate(-50%, -50%); }
          article section.s-flow .container ul li .text {
            width: 715px;
            min-height: 330px;
            background: #fef8f7;
            padding: 40px 55px 50px 220px;
            border-radius: 30px;
            position: relative; }
            article section.s-flow .container ul li .text .num-wrap {
              display: flex;
              justify-content: center;
              align-items: center;
              flex-direction: column;
              gap: 0.25em 0;
              width: 110px;
              height: 110px;
              border: 1px solid #dbcfd0;
              border-radius: 100%;
              padding: 0 0 0.4em;
              position: absolute;
              right: 25px;
              top: -65px; }
              article section.s-flow .container ul li .text .num-wrap span {
                font-family: sitka-text, "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", メイリオ, Meiryo, serif, Georgia;
                font-weight: 400;
                font-style: normal;
                color: #dbcfd0;
                line-height: 0.4;
                padding: 0 0 0.3em; }
                article section.s-flow .container ul li .text .num-wrap span.num {
                  font-size: 55px; }
            article section.s-flow .container ul li .text h3 {
              font-family: "Shippori Mincho", serif;
              font-weight: 600;
              font-style: normal;
              font-size: 26px;
              line-height: 1.1;
              color: #ed8491;
              text-align: center;
              margin: 0 0 15px; }
              article section.s-flow .container ul li .text h3 span {
                font-size: 18px; }
          article section.s-flow .container ul li .img {
            flex: 1;
            position: relative;
            z-index: 1; }
            article section.s-flow .container ul li .img img {
              max-width: inherit;
              position: absolute;
              left: 0;
              top: -40px; }
          article section.s-flow .container ul li:nth-child(even) {
            flex-direction: row-reverse; }
            article section.s-flow .container ul li:nth-child(even) .text {
              padding: 40px 220px 50px 55px; }
              article section.s-flow .container ul li:nth-child(even) .text .num-wrap {
                right: inherit;
                left: 25px; }
            article section.s-flow .container ul li:nth-child(even) .img img {
              left: inherit;
              right: 0; }
      @media screen and (max-width: 979px) {
        article section.s-flow {
          padding: 12vw 0 29vw; }
          article section.s-flow .container {
            width: 95%; }
            article section.s-flow .container ul li {
              flex-direction: column;
              position: relative; }
              article section.s-flow .container ul li + li {
                margin-top: 20vw; }
                article section.s-flow .container ul li + li::before {
                  width: 20vw;
                  height: 20vw;
                  background-size: 3.5vw auto;
                  top: -15vw; }
                article section.s-flow .container ul li + li::after {
                  height: 20vw;
                  top: -10vw; }
              article section.s-flow .container ul li .text {
                width: 85vw;
                min-height: 50vw;
                padding: 7vw 4vw 37vw;
                border-radius: 4vw;
                margin-left: auto; }
                article section.s-flow .container ul li .text .num-wrap {
                  width: 15vw;
                  height: 15vw;
                  right: 3vw;
                  top: -7.5vw; }
                  article section.s-flow .container ul li .text .num-wrap span.num {
                    font-size: 8vw; }
                article section.s-flow .container ul li .text h3 {
                  font-size: 4.5vw;
                  margin: 0 0 2vw; }
                  article section.s-flow .container ul li .text h3 span {
                    font-size: 3vw; }
              article section.s-flow .container ul li .img {
                width: 100%;
                text-align: center;
                padding-left: 10vw;
                position: absolute;
                left: 0;
                bottom: -10vw; }
                article section.s-flow .container ul li .img img {
                  width: auto;
                  height: 45vw;
                  position: relative;
                  left: inherit;
                  top: inherit; }
              article section.s-flow .container ul li:nth-child(even) {
                flex-direction: column; }
                article section.s-flow .container ul li:nth-child(even) .text {
                  padding: 7vw 4vw 37vw;
                  margin-right: auto;
                  margin-left: 0; }
                  article section.s-flow .container ul li:nth-child(even) .text .num-wrap {
                    right: inherit;
                    left: 3vw; }
                article section.s-flow .container ul li:nth-child(even) .img {
                  right: inherit;
                  padding-right: 10vw;
                  padding-left: 0; }
                  article section.s-flow .container ul li:nth-child(even) .img img {
                    position: relative;
                    right: inherit; } }
    article section.s-caution {
      padding: 7vw 0 8vw;
      padding: calc(5vw + 60px) 0 calc(5vw + 120px);
      margin-top: -5vw; }
      article section.s-caution .container {
        width: 980px;
        margin: 0 auto; }
        article section.s-caution .container ul {
          margin: 40px 0 0; }
          article section.s-caution .container ul li {
            background: #fff;
            box-shadow: 15px 15px 21px rgba(187, 158, 178, 0.1);
            border-radius: 20px;
            padding: 32px 35px; }
            article section.s-caution .container ul li + li {
              margin-top: 40px; }
            article section.s-caution .container ul li h3 {
              font-family: "Shippori Mincho", serif;
              font-weight: 600;
              font-style: normal;
              font-size: 26px;
              color: #b874af;
              text-align: center;
              background: #f7f7f7;
              padding: 0 0 2px;
              margin: 0 0 25px; }
      @media screen and (max-width: 979px) {
        article section.s-caution {
          padding: 12vw 0 19vw; }
          article section.s-caution .container {
            width: 90%; }
            article section.s-caution .container ul {
              margin: 5vw 0 0; }
              article section.s-caution .container ul li {
                box-shadow: 2vw 2vw 3vw rgba(187, 158, 178, 0.1);
                border-radius: 3vw;
                padding: 3.5vw 4vw; }
                article section.s-caution .container ul li + li {
                  margin-top: 5vw; }
                article section.s-caution .container ul li h3 {
                  font-size: 4.5vw;
                  padding: 0 0 0.25vw;
                  margin: 0 0 3vw; } }
    article section.s-qa {
      padding: 7vw 0 50px;
      padding: calc(5vw + 60px) 0 50px;
      margin-top: -5vw; }
      article section.s-qa .container {
        width: 980px;
        margin: 0 auto; }
        article section.s-qa .container ul {
          margin: 40px 0 0; }
          article section.s-qa .container ul li + li {
            margin-top: 40px; }
          article section.s-qa .container ul li h3 {
            min-height: 50px;
            font-family: "Shippori Mincho", serif;
            font-weight: 600;
            font-style: normal;
            font-size: 24px;
            color: #ed8491;
            padding: 4px 0 0 65px;
            margin: 0 0 20px;
            position: relative; }
            article section.s-qa .container ul li h3::before {
              content: "Q";
              display: flex;
              justify-content: center;
              align-items: center;
              width: 50px;
              height: 50px;
              font-family: "Shippori Mincho", serif;
              font-weight: 600;
              font-style: normal;
              color: #fff;
              font-size: 25px;
              border-radius: 100%;
              background: #f67887;
              padding: 0 0 0.15em;
              position: absolute;
              left: 0;
              top: 0; }
          article section.s-qa .container ul li .text {
            background: #f7f7f7;
            padding: 30px 35px;
            border-radius: 20px; }
      @media screen and (max-width: 979px) {
        article section.s-qa {
          padding: 12vw 0 7vw; }
          article section.s-qa .container {
            width: 90%; }
            article section.s-qa .container ul {
              margin: 5vw 0 0; }
              article section.s-qa .container ul li + li {
                margin-top: 5vw; }
              article section.s-qa .container ul li h3 {
                min-height: 8vw;
                font-size: 4vw;
                line-height: 1.3;
                padding: 1.25vw 0 0 10vw;
                margin: 0 0 3vw; }
                article section.s-qa .container ul li h3::before {
                  width: 8vw;
                  height: 8vw;
                  font-size: 5vw; }
              article section.s-qa .container ul li .text {
                padding: 3vw 4vw;
                border-radius: 3vw; } }
