@media print, screen and (min-width: 769px) {
  .prouse .c-frame .c-frame__center {
    padding-bottom: 24px; } }

.prouse .mv {
  text-align: center;
  padding: 70px 0 55px;
  height: 570px;
  background-color: #f6f1e5;
  background-image: url("/assets/images/prouse/mv_bg.png");
  background-repeat: no-repeat;
  background-position: center top;
  position: relative;
  overflow: hidden; }
  @media screen and (max-width: 768px) {
    .prouse .mv {
      padding: 12vw 0 0;
      height: 131vw;
      background-image: url("/assets/images/prouse/mv_bg_sp.png");
      background-size: 100%; } }
  .prouse .mv:before {
    content: "";
    display: block;
    width: 100%;
    height: 8px;
    position: absolute;
    top: 0;
    left: 0;
    background-image: url("/assets/images/bg_02.png");
    background-repeat: repeat-x;
    background-position: center top;
    background-size: 10px; }
  @media screen and (max-width: 768px) {
    .prouse .mv img {
      max-width: inherit; } }
  .prouse .mv .mv__inner {
    position: relative;
    z-index: 2; }
    @media screen and (max-width: 768px) {
      .prouse .mv .mv__inner {
        padding: 0; } }
  .prouse .mv .mv__ttl {
    width: 666px;
    height: 340px;
    margin: 0 auto;
    padding: 106px 0 0;
    position: relative;
    background-image: url("/assets/images/prouse/mv_ttl_bg.png");
    background-repeat: repeat;
    background-position: center top;
    background-size: cover;
    opacity: 0;
    -webkit-transform: translateY(50px);
            transform: translateY(50px); }
    @media screen and (max-width: 768px) {
      .prouse .mv .mv__ttl {
        width: auto;
        height: auto;
        padding: 0;
        background-image: url("/assets/images/prouse/mv_ttl_bg_sp.png"); } }
    .prouse .mv .mv__ttl .mv__ttl01 {
      position: absolute;
      top: -3px;
      left: 50%;
      margin: 0 0 0 -223px; }
      .prouse .mv .mv__ttl .mv__ttl01:before {
        content: "";
        display: block;
        width: 90px;
        height: 30px;
        position: absolute;
        top: -12px;
        left: 50%;
        z-index: 2;
        margin: 0 0 0 -45px;
        background-image: url("/assets/images/mv_fish.png");
        background-repeat: repeat;
        background-position: center top;
        background-size: 100% 100%;
        -webkit-transform-origin: right bottom;
                transform-origin: right bottom;
        -webkit-transform: rotateZ(12deg);
                transform: rotateZ(12deg); }
        @media screen and (max-width: 768px) {
          .prouse .mv .mv__ttl .mv__ttl01:before {
            width: 15.2vw;
            height: 5.8vw;
            top: -2vw;
            margin: 0 0 0 -7.6vw; } }
      @media screen and (max-width: 768px) {
        .prouse .mv .mv__ttl .mv__ttl01 {
          width: 100%;
          top: -0.5vw;
          left: 0;
          margin: 0; } }
  .prouse .mv .mv__txt {
    margin: 0;
    opacity: 0;
    -webkit-transform: translateY(50px);
            transform: translateY(50px);
    position: relative;
    top: -30px; }
    @media screen and (max-width: 768px) {
      .prouse .mv .mv__txt {
        margin: 5vw 0 0; } }
  .prouse .mv .mv__pkg {
    width: 318px;
    height: 337px;
    overflow: hidden;
    position: absolute;
    top: 130px;
    left: 27px;
    opacity: 0;
    -webkit-transform: translateX(-50px);
            transform: translateX(-50px); }
    @media screen and (max-width: 768px) {
      .prouse .mv .mv__pkg {
        width: 48vw;
        height: 51vw;
        top: 68vw;
        left: 4vw; } }
    .prouse .mv .mv__pkg img {
      position: relative;
      width: 318px;
      height: 674px;
      -webkit-animation: anime_flashing 2s 0s infinite steps(2);
              animation: anime_flashing 2s 0s infinite steps(2); }
      @media screen and (max-width: 768px) {
        .prouse .mv .mv__pkg img {
          width: 100%;
          height: auto; } }
  .prouse .mv .mv__doctor {
    width: 397px;
    height: 354px;
    overflow: hidden;
    position: absolute;
    bottom: 5px;
    right: -10px;
    opacity: 0;
    -webkit-transform: translateX(50px);
            transform: translateX(50px); }
    @media screen and (max-width: 768px) {
      .prouse .mv .mv__doctor {
        width: 64vw;
        height: 53.6vw;
        bottom: -33vw;
        right: -5vw; } }
    .prouse .mv .mv__doctor img {
      position: relative;
      width: 100%;
      height: auto; }

.prouse.is-loaded .mv .mv__ttl {
  -webkit-animation: animate--fadeInUp 0.5s 0.2s forwards;
          animation: animate--fadeInUp 0.5s 0.2s forwards; }

.prouse.is-loaded .mv .mv__txt {
  -webkit-animation: animate--fadeInUp 0.5s 0.4s forwards;
          animation: animate--fadeInUp 0.5s 0.4s forwards; }

.prouse.is-loaded .mv .mv__pkg {
  -webkit-animation: animate--fadeInLeft 0.5s 0.6s forwards;
          animation: animate--fadeInLeft 0.5s 0.6s forwards; }

.prouse.is-loaded .mv .mv__doctor {
  -webkit-animation: animate--fadeInRight 0.5s 0.8s forwards;
          animation: animate--fadeInRight 0.5s 0.8s forwards; }

@-webkit-keyframes anime_mvFish {
  0% {
    -webkit-transform: rotateZ(0deg) translateY(0);
            transform: rotateZ(0deg) translateY(0); }
  10% {
    -webkit-transform: rotateZ(6deg) translateY(-15px);
            transform: rotateZ(6deg) translateY(-15px); }
  15% {
    -webkit-transform: rotateZ(12deg);
            transform: rotateZ(12deg); }
  20% {
    -webkit-transform: rotateZ(0deg);
            transform: rotateZ(0deg); }
  25% {
    -webkit-transform: rotateZ(10deg) translateY(0);
            transform: rotateZ(10deg) translateY(0); }
  30% {
    -webkit-transform: rotateZ(4deg);
            transform: rotateZ(4deg); }
  35% {
    -webkit-transform: rotateZ(12deg);
            transform: rotateZ(12deg); } }

@keyframes anime_mvFish {
  0% {
    -webkit-transform: rotateZ(0deg) translateY(0);
            transform: rotateZ(0deg) translateY(0); }
  10% {
    -webkit-transform: rotateZ(6deg) translateY(-15px);
            transform: rotateZ(6deg) translateY(-15px); }
  15% {
    -webkit-transform: rotateZ(12deg);
            transform: rotateZ(12deg); }
  20% {
    -webkit-transform: rotateZ(0deg);
            transform: rotateZ(0deg); }
  25% {
    -webkit-transform: rotateZ(10deg) translateY(0);
            transform: rotateZ(10deg) translateY(0); }
  30% {
    -webkit-transform: rotateZ(4deg);
            transform: rotateZ(4deg); }
  35% {
    -webkit-transform: rotateZ(12deg);
            transform: rotateZ(12deg); } }

@media screen and (max-width: 768px) {
  .prouse .l-pageNavWrap {
    padding: 100px 0 0; } }

@media print, screen and (min-width: 769px) {
  .prouse .l-pageNav .l-pageNav__inner {
    width: 918px; } }

@media screen and (max-width: 768px) {
  .prouse .l-pageNav .l-pageNav__inner {
    padding-right: 15px;
    padding-left: 15px; } }

@media print, screen and (min-width: 769px) {
  .prouse .l-pageNav ul {
    margin: 0 -35px; } }

@media screen and (max-width: 768px) {
  .prouse .l-pageNav ul:before, .prouse .l-pageNav ul:after {
    content: none; } }

@media screen and (max-width: 768px) {
  .prouse .l-pageNav ul li {
    width: 50%; } }

@media screen and (max-width: 768px) {
  .prouse .l-pageNav ul li.l-pageNav__item01:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 1px;
    height: calc(100% - 16px);
    background: #fff;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%); } }

.prouse .l-pageNav ul li.l-pageNav__item01 a:after {
  background-image: url("/assets/images/prouse/pageNav_01_on.png"); }

.prouse .l-pageNav ul li.l-pageNav__item02 {
  position: relative; }
  @media screen and (max-width: 768px) {
    .prouse .l-pageNav ul li.l-pageNav__item02:after {
      content: "";
      display: block;
      position: absolute;
      top: 50%;
      right: 0;
      width: 1px;
      height: calc(100% - 16px);
      background: #fff;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%); } }
  .prouse .l-pageNav ul li.l-pageNav__item02 a:after {
    background-image: url("/assets/images/prouse/pageNav_02_on.png"); }
  .prouse .l-pageNav ul li.l-pageNav__item02 a picture:after {
    content: url("/assets/images/prouse/pageNav_02_icon.png");
    position: absolute;
    top: -16px;
    left: 60px; }
    @media screen and (max-width: 768px) {
      .prouse .l-pageNav ul li.l-pageNav__item02 a picture:after {
        content: "";
        display: block;
        background-image: url("/assets/images/prouse/pageNav_02_icon_sp.png");
        background-size: contain;
        background-repeat: no-repeat;
        width: 100px;
        height: 20px;
        position: absolute;
        top: -19px;
        left: 37px; } }

.prouse .l-pageNav ul li.l-pageNav__item03 a:after {
  background-image: url("/assets/images/prouse/pageNav_03_on.png"); }

@media screen and (max-width: 768px) {
  .prouse .l-pageNav ul li.l-pageNav__item04:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    width: 1px;
    height: calc(100% - 16px);
    background: #fff;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%); } }

.prouse .l-pageNav ul li.l-pageNav__item04 a:after {
  background-image: url("/assets/images/prouse/pageNav_04_on.png"); }

@media screen and (max-width: 768px) {
  .prouse .l-pageNav ul li.l-pageNav__item05:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    width: 1px;
    height: calc(100% - 16px);
    background: #fff;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%); } }

.prouse .l-pageNav ul li.l-pageNav__item05 a:after {
  background-image: url("/assets/images/prouse/pageNav_05_on.png"); }

@media screen and (max-width: 768px) {
  .prouse .l-pageNav ul li img {
    width: 100%;
    max-width: 100%; } }

.prouse .age {
  padding: 80px 0;
  position: relative;
  z-index: 2; }
  @media screen and (max-width: 768px) {
    .prouse .age {
      padding: 50px 0 0; } }
  .prouse .age:after {
    content: none; }
  .prouse .age .age__ttl {
    margin-bottom: 50px; }
    @media screen and (max-width: 768px) {
      .prouse .age .age__ttl {
        margin-bottom: 30px; } }
  .prouse .age .age__lead {
    text-align: center; }
  .prouse .age .age__detail {
    margin: 56px 0 0; }
    @media screen and (max-width: 768px) {
      .prouse .age .age__detail {
        margin: 37px auto 0;
        max-width: 345px; } }
    .prouse .age .age__detail .age__detailTtl {
      margin: 60px 0 30px;
      text-align: center; }
      @media screen and (max-width: 768px) {
        .prouse .age .age__detail .age__detailTtl {
          margin: 30px 0 15px; } }
    .prouse .age .age__detail .age__detailLead {
      margin: 0 0 40px;
      text-align: center; }
    .prouse .age .age__detail .age__detailBlock {
      position: relative;
      min-height: 232px;
      padding-top: 5px; }
      @media screen and (max-width: 768px) {
        .prouse .age .age__detail .age__detailBlock {
          min-height: inherit;
          padding-top: 0; } }
    .prouse .age .age__detail .age__detailImg {
      width: 863px;
      margin: 0 auto; }
      @media screen and (max-width: 768px) {
        .prouse .age .age__detail .age__detailImg {
          width: auto; } }
    .prouse .age .age__detail .age__detailTxt {
      font-size: 1.8rem;
      line-height: 1.9;
      background-image: url("/assets/images/bg_lines_01.png");
      background-repeat: repeat;
      background-position: left 0; }
      @media screen and (max-width: 768px) {
        .prouse .age .age__detail .age__detailTxt {
          font-size: 1.4rem;
          margin: 10px 0 0;
          line-height: 1.8;
          background-size: 112%; } }
      @media screen and (max-width: 374px) {
        .prouse .age .age__detail .age__detailTxt {
          background-size: 88vw; } }
    @media print, screen and (min-width: 769px) {
      .prouse .age .age__detail .age__detailItem--01 .age__detailBlock {
        padding-left: 466px; } }
    @media print, screen and (min-width: 769px) {
      .prouse .age .age__detail .age__detailItem--01 .age__detailImg {
        position: absolute;
        top: 0;
        left: 0; } }
  .prouse .age .age__detailItem--02 {
    text-align: center; }
    .prouse .age .age__detailItem--02 .age__detailImg {
      font-size: 0;
      margin: 20px 0;
      width: auto; }
      @media print, screen and (min-width: 769px) {
        .prouse .age .age__detailItem--02 .age__detailImg dl {
          display: inline-block;
          padding: 0 20px;
          padding-right: 40px; } }
      @media print, screen and (min-width: 769px) {
        .prouse .age .age__detailItem--02 .age__detailImg dl + dl {
          background: url("/assets/images/bg_line_01.png") repeat-y left top;
          background-size: 3px auto;
          padding: 0 20px 0 30px; } }
      @media screen and (max-width: 768px) {
        .prouse .age .age__detailItem--02 .age__detailImg dl + dl {
          margin-top: 40px; } }
      .prouse .age .age__detailItem--02 .age__detailImg dt {
        margin: 0 0 20px; }
        @media screen and (max-width: 768px) {
          .prouse .age .age__detailItem--02 .age__detailImg dt {
            margin-bottom: 15px; } }
        @media print, screen and (min-width: 769px) {
          .prouse .age .age__detailItem--02 .age__detailImg dt img {
            width: 250px; } }
        @media screen and (max-width: 768px) {
          .prouse .age .age__detailItem--02 .age__detailImg dt img {
            width: 60%; } }
      @media screen and (max-width: 768px) {
        .prouse .age .age__detailItem--02 .age__detailImg dd {
          margin-left: -3%; } }
      .prouse .age .age__detailItem--02 .age__detailImg + .age__detailImg {
        margin-top: 40px; }
        @media screen and (max-width: 768px) {
          .prouse .age .age__detailItem--02 .age__detailImg + .age__detailImg {
            margin-top: 30px; } }
    .prouse .age .age__detailItem--02 .age__detailTxt {
      margin: 60px 0; }
      .prouse .age .age__detailItem--02 .age__detailTxt.age__detailTxt--01 {
        background-position: left -1px; }
      @media print, screen and (min-width: 769px) {
        .prouse .age .age__detailItem--02 .age__detailTxt.age__detailTxt--pc-line1 {
          background: none; } }
      @media screen and (max-width: 768px) {
        .prouse .age .age__detailItem--02 .age__detailTxt {
          margin: 40px 0; } }
  .prouse .age .age__doctor {
    position: absolute;
    top: -134px;
    left: 1px;
    z-index: 3; }
    @media screen and (max-width: 768px) {
      .prouse .age .age__doctor {
        top: -95px;
        left: -37px;
        width: 29vw;
        max-width: 109px; } }
    .prouse .age .age__doctor.is-animate {
      opacity: 0;
      -webkit-transform: translateX(-100px);
              transform: translateX(-100px); }
      .prouse .age .age__doctor.is-animate.is-animated {
        -webkit-animation: animate--fadeInRight 0.5s forwards;
                animation: animate--fadeInRight 0.5s forwards; }

.prouse .relation {
  margin-top: -1px;
  padding: 80px 0 0;
  overflow: hidden; }
  .prouse .relation:before {
    content: none; }
  @media screen and (max-width: 768px) {
    .prouse .relation {
      padding: 14vw 0 0; } }
  .prouse .relation .c-inner {
    text-align: center; }
  .prouse .relation .research__ttl {
    margin-bottom: 100px; }
  @media screen and (max-width: 768px) {
    .prouse .relation .relation__detail {
      max-width: 345px;
      margin-left: auto;
      margin-right: auto; } }
  .prouse .relation .relation__detail .relation__detailTtl {
    margin: 0 0 30px; }
    @media screen and (max-width: 768px) {
      .prouse .relation .relation__detail .relation__detailTtl {
        margin: 0 0 15px; } }
  .prouse .relation .relation__detail .relation__detailLead {
    margin: 0 0 40px; }
  .prouse .relation .relation__btn {
    margin-top: 45px; }
    @media screen and (max-width: 768px) {
      .prouse .relation .relation__btn {
        margin: 25px auto 0;
        width: 94%; } }
    @media print, screen and (min-width: 769px) {
      .prouse .relation .relation__btn a {
        background-image: url("/assets/images/prouse/relation_btn_bg.png"); } }
  .prouse .relation .relation__detailItem--01 .relation__detailImg {
    font-size: 0;
    margin: 20px 0; }
    @media print, screen and (min-width: 769px) {
      .prouse .relation .relation__detailItem--01 .relation__detailImg dl {
        display: inline-block;
        padding: 0 20px;
        padding-right: 40px; } }
    @media print, screen and (min-width: 769px) {
      .prouse .relation .relation__detailItem--01 .relation__detailImg dl + dl {
        background: url("/assets/images/bg_line_01.png") repeat-y left top;
        background-size: 3px auto;
        padding: 0 20px 0 30px; } }
    @media screen and (max-width: 768px) {
      .prouse .relation .relation__detailItem--01 .relation__detailImg dl + dl {
        margin-top: 40px; } }
    .prouse .relation .relation__detailItem--01 .relation__detailImg dt {
      margin: 0 0 20px; }
      @media screen and (max-width: 768px) {
        .prouse .relation .relation__detailItem--01 .relation__detailImg dt {
          margin-bottom: 15px; } }
      @media print, screen and (min-width: 769px) {
        .prouse .relation .relation__detailItem--01 .relation__detailImg dt img {
          width: 250px; } }
      @media screen and (max-width: 768px) {
        .prouse .relation .relation__detailItem--01 .relation__detailImg dt img {
          width: 60%; } }
    @media screen and (max-width: 768px) {
      .prouse .relation .relation__detailItem--01 .relation__detailImg dd {
        margin-left: -3%; } }
    .prouse .relation .relation__detailItem--01 .relation__detailImg + .relation__detailImg {
      margin-top: 40px; }
      @media screen and (max-width: 768px) {
        .prouse .relation .relation__detailItem--01 .relation__detailImg + .relation__detailImg {
          margin-top: 30px; } }
  .prouse .relation .relation__detailItem--01 .relation__detailTxt {
    margin: 60px 0;
    text-align: left; }
    @media screen and (max-width: 768px) {
      .prouse .relation .relation__detailItem--01 .relation__detailTxt {
        margin: 40px 0; } }
  .prouse .relation .relation__detail--02 {
    margin: 60px 0 0; }
    @media screen and (max-width: 768px) {
      .prouse .relation .relation__detail--02 {
        margin: 30px auto 0; } }
    .prouse .relation .relation__detail--02 .relation__detailItem--01 .relation__detailImg {
      text-align: center;
      font-size: 0; }
      .prouse .relation .relation__detail--02 .relation__detailItem--01 .relation__detailImg figure {
        display: inline-block; }
        .prouse .relation .relation__detail--02 .relation__detailItem--01 .relation__detailImg figure + figure {
          margin-left: 40px; }
          @media screen and (max-width: 768px) {
            .prouse .relation .relation__detail--02 .relation__detailItem--01 .relation__detailImg figure + figure {
              margin: 30px 0 0; } }
  .prouse .relation .relation__detail--03 {
    margin-top: 60px; }
    @media screen and (max-width: 768px) {
      .prouse .relation .relation__detail--03 {
        margin-top: 30px; } }
  .prouse .relation .relation__detailColumn {
    margin-top: 90px;
    padding: 10px 60px;
    text-align: left;
    position: relative;
    background: url("/assets/images/prouse/column_bg.png") repeat-y center top; }
    @media screen and (max-width: 768px) {
      .prouse .relation .relation__detailColumn {
        max-width: 345px;
        border-radius: 20px;
        padding: 25px 20px;
        margin: 40px auto 0;
        background: #fff; } }
    @media print, screen and (min-width: 769px) {
      .prouse .relation .relation__detailColumn:before {
        content: "";
        display: block;
        width: 100%;
        height: 30px;
        position: absolute;
        top: -30px;
        left: 0;
        background: url("/assets/images/prouse/column_bg_top.png") no-repeat center top; } }
    @media print, screen and (min-width: 769px) {
      .prouse .relation .relation__detailColumn:after {
        content: "";
        display: block;
        width: 100%;
        height: 30px;
        position: absolute;
        bottom: -30px;
        left: 0;
        background: url("/assets/images/prouse/column_bg_bottom.png") no-repeat center top; } }
    .prouse .relation .relation__detailColumn .relation__detailTtl {
      margin: 0 0 30px; }
      @media screen and (max-width: 768px) {
        .prouse .relation .relation__detailColumn .relation__detailTtl {
          margin: 0 0 20px; } }
    .prouse .relation .relation__detailColumn .relation__detailImg {
      margin: 30px 0; }
    .prouse .relation .relation__detailColumn .relation__detailText {
      font-size: 1.6rem; }
      @media screen and (max-width: 768px) {
        .prouse .relation .relation__detailColumn .relation__detailText {
          font-size: 1.3rem; } }
    .prouse .relation .relation__detailColumn .relation__detailNotes {
      font-size: 1.4rem; }
      @media screen and (max-width: 768px) {
        .prouse .relation .relation__detailColumn .relation__detailNotes {
          font-size: 1.0rem; } }
  .prouse .relation .relation__doctor {
    width: 100%;
    position: relative;
    margin: 40px 0 0;
    z-index: 10; }
    @media print, screen and (min-width: 769px) {
      .prouse .relation .relation__doctor {
        height: 319px; } }
    @media screen and (max-width: 768px) {
      .prouse .relation .relation__doctor {
        max-width: 375px;
        margin: 30px 0 0;
        bottom: 0;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%);
        height: 160px; } }
    @media screen and (max-width: 374px) {
      .prouse .relation .relation__doctor {
        height: 42vw; } }
    .prouse .relation .relation__doctor .relation__fish01 {
      top: 10px;
      left: 850px; }
      @media screen and (max-width: 768px) {
        .prouse .relation .relation__doctor .relation__fish01 {
          display: none; } }
      .prouse .relation .relation__doctor .relation__fish01 img {
        width: 152px; }
    .prouse .relation .relation__doctor .relation__fish02 {
      top: 100px;
      left: 900px;
      -webkit-animation-delay: 1.2s;
              animation-delay: 1.2s; }
      @media screen and (max-width: 768px) {
        .prouse .relation .relation__doctor .relation__fish02 {
          display: none; } }
      .prouse .relation .relation__doctor .relation__fish02 img {
        width: 96px; }
    .prouse .relation .relation__doctor .relation__doctorImg {
      margin: 0 0 0 395px;
      position: relative;
      z-index: 2; }
      @media screen and (max-width: 768px) {
        .prouse .relation .relation__doctor .relation__doctorImg {
          margin: 0; } }
    .prouse .relation .relation__doctor p {
      position: absolute;
      top: 60px;
      left: 57px; }
      @media screen and (max-width: 768px) {
        .prouse .relation .relation__doctor p {
          top: 0;
          left: 0; } }
    .prouse .relation .relation__doctor.is-animate {
      opacity: 0; }
      .prouse .relation .relation__doctor.is-animate .relation__doctorImg {
        opacity: 0;
        -webkit-transform: translateX(-100px);
                transform: translateX(-100px); }
      .prouse .relation .relation__doctor.is-animate p {
        opacity: 0;
        -webkit-transform: translateY(50px);
                transform: translateY(50px); }
      .prouse .relation .relation__doctor.is-animate.is-animated {
        -webkit-animation: animate--fadeIn 0.5s forwards;
                animation: animate--fadeIn 0.5s forwards; }
        .prouse .relation .relation__doctor.is-animate.is-animated .relation__doctorImg {
          -webkit-animation: animate--fadeInRight 0.5s 0.2s forwards;
                  animation: animate--fadeInRight 0.5s 0.2s forwards; }
        .prouse .relation .relation__doctor.is-animate.is-animated p {
          -webkit-animation: animate--fadeInUp 0.5s 0.4s forwards;
                  animation: animate--fadeInUp 0.5s 0.4s forwards; }
    .prouse .relation .relation__doctor.relation__doctor--02 {
      margin-bottom: 0; }
      .prouse .relation .relation__doctor.relation__doctor--02 .relation__fish01 {
        top: 35px;
        left: 10px; }
      .prouse .relation .relation__doctor.relation__doctor--02 .relation__fish02 {
        top: 140px;
        left: 90px; }
      .prouse .relation .relation__doctor.relation__doctor--02 .relation__doctorImg {
        margin: 0 0 0 266px; }
      .prouse .relation .relation__doctor.relation__doctor--02 p {
        position: absolute;
        top: 20px;
        left: 490px; }
        @media screen and (max-width: 768px) {
          .prouse .relation .relation__doctor.relation__doctor--02 p {
            top: 0;
            left: 0; } }
    .prouse .relation .relation__doctor.relation__doctor--03 {
      position: absolute;
      top: -66px;
      left: 35px; }

.prouse .research {
  padding-bottom: 0; }
  .prouse .research .c-inner {
    z-index: 10;
    position: relative; }
  .prouse .research .research__ttl {
    margin-bottom: 100px;
    position: relative;
    z-index: 2; }
    @media screen and (max-width: 768px) {
      .prouse .research .research__ttl {
        margin-bottom: 20vw; } }
  @media screen and (max-width: 768px) {
    .prouse .research .research__detail {
      max-width: 345px;
      margin-left: auto;
      margin-right: auto; } }
  .prouse .research .research__detail .research__detailItem + .research__detailItem {
    margin-top: 80px; }
  .prouse .research .research__detail .research__detailBlock {
    padding-top: 30px;
    text-align: center; }
    @media screen and (max-width: 768px) {
      .prouse .research .research__detail .research__detailBlock {
        padding-top: 3vw; } }
  .prouse .research .research__detail .research__detailTtl {
    position: absolute;
    width: 100%;
    top: -60px;
    left: 0;
    text-align: center; }
    @media screen and (max-width: 768px) {
      .prouse .research .research__detail .research__detailTtl {
        top: -45px; } }
  .prouse .research .research__detail .research__detailTxt {
    display: inline-block;
    text-align: center;
    font-size: 1.8rem;
    line-height: 1.9;
    margin: 0 0 40px;
    background-image: url(/assets/images/bg_lines_01.png);
    background-repeat: repeat;
    background-position: left 0; }
    @media screen and (max-width: 768px) {
      .prouse .research .research__detail .research__detailTxt {
        font-size: 1.3rem;
        margin: 10px 0 25px;
        line-height: 2.0;
        background-size: auto 26px; } }
  .prouse .research .research__detail .research__detailItem--02 .research__detailImg {
    width: auto;
    margin: 0 auto;
    font-size: 0;
    text-align: center; }
    .prouse .research .research__detail .research__detailItem--02 .research__detailImg figure {
      display: inline-block;
      vertical-align: top;
      margin: 0 20px; }
      .prouse .research .research__detail .research__detailItem--02 .research__detailImg figure figcaption {
        font-size: 1.6rem;
        color: #696969;
        margin: 20px 0 0; }
        @media screen and (max-width: 768px) {
          .prouse .research .research__detail .research__detailItem--02 .research__detailImg figure figcaption {
            font-size: 1.4rem;
            margin: 15px 0 0; } }
      @media screen and (max-width: 768px) {
        .prouse .research .research__detail .research__detailItem--02 .research__detailImg figure + figure {
          margin: 20px 0 0; } }
      .prouse .research .research__detail .research__detailItem--02 .research__detailImg figure + figure figcaption {
        color: #ec4e00; }
  .prouse .research .research__detail .research__detailItem--03 .research__detailImg + .research__detailTxt {
    margin-top: 50px; }
    @media screen and (max-width: 768px) {
      .prouse .research .research__detail .research__detailItem--03 .research__detailImg + .research__detailTxt {
        margin-top: 25px; } }
  .prouse .research .research__detail .research__detailItem--03 .research__detailImgNote {
    text-align: left;
    max-width: 695px;
    margin: 0 auto; }
    .prouse .research .research__detail .research__detailItem--03 .research__detailImgNote--01 {
      font-size: 1.5rem;
      margin-top: 20px; }
      @media screen and (max-width: 768px) {
        .prouse .research .research__detail .research__detailItem--03 .research__detailImgNote--01 {
          font-size: 1.1rem;
          margin-top: 10px; } }
    .prouse .research .research__detail .research__detailItem--03 .research__detailImgNote--02 {
      font-size: 1.2rem; }
      @media screen and (max-width: 768px) {
        .prouse .research .research__detail .research__detailItem--03 .research__detailImgNote--02 {
          font-size: 1.1rem; } }
    .prouse .research .research__detail .research__detailItem--03 .research__detailImgNote--03 {
      font-size: 1.2rem;
      margin-top: 25px; }
      @media screen and (max-width: 768px) {
        .prouse .research .research__detail .research__detailItem--03 .research__detailImgNote--03 {
          font-size: 1.0rem;
          margin-top: 15px; } }
  .prouse .research .research__doctor {
    width: 100%;
    position: relative;
    margin: 30px 0 50px; }
    @media screen and (max-width: 768px) {
      .prouse .research .research__doctor {
        max-width: 375px;
        bottom: 0;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%); } }
    .prouse .research .research__doctor .research__fish01 {
      top: 10px;
      left: 850px; }
      @media screen and (max-width: 768px) {
        .prouse .research .research__doctor .research__fish01 {
          display: none; } }
      .prouse .research .research__doctor .research__fish01 img {
        width: 152px; }
    .prouse .research .research__doctor .research__fish02 {
      top: 100px;
      left: 900px;
      -webkit-animation-delay: 1.2s;
              animation-delay: 1.2s; }
      @media screen and (max-width: 768px) {
        .prouse .research .research__doctor .research__fish02 {
          display: none; } }
      .prouse .research .research__doctor .research__fish02 img {
        width: 96px; }
    .prouse .research .research__doctor .research__doctorImg {
      margin: 0 0 0 529px;
      position: relative;
      z-index: 2; }
      @media screen and (max-width: 768px) {
        .prouse .research .research__doctor .research__doctorImg {
          margin: 0; } }
    .prouse .research .research__doctor p {
      position: absolute;
      top: 10px;
      left: 86px; }
      @media screen and (max-width: 768px) {
        .prouse .research .research__doctor p {
          top: 0;
          left: 0; } }
    .prouse .research .research__doctor.is-animate {
      opacity: 0; }
      .prouse .research .research__doctor.is-animate .research__doctorImg {
        opacity: 0;
        -webkit-transform: translateX(-100px);
                transform: translateX(-100px); }
      .prouse .research .research__doctor.is-animate p {
        opacity: 0;
        -webkit-transform: translateY(50px);
                transform: translateY(50px); }
      .prouse .research .research__doctor.is-animate.is-animated {
        -webkit-animation: animate--fadeIn 0.5s forwards;
                animation: animate--fadeIn 0.5s forwards; }
        .prouse .research .research__doctor.is-animate.is-animated .research__doctorImg {
          -webkit-animation: animate--fadeInRight 0.5s 0.2s forwards;
                  animation: animate--fadeInRight 0.5s 0.2s forwards; }
        .prouse .research .research__doctor.is-animate.is-animated p {
          -webkit-animation: animate--fadeInUp 0.5s 0.4s forwards;
                  animation: animate--fadeInUp 0.5s 0.4s forwards; }
    .prouse .research .research__doctor.research__doctor--02 {
      margin-bottom: 0; }
      @media print, screen and (min-width: 769px) {
        .prouse .research .research__doctor.research__doctor--02 {
          height: 319px; } }
      @media screen and (max-width: 768px) {
        .prouse .research .research__doctor.research__doctor--02 {
          margin-bottom: -15px; } }
      @media screen and (max-width: 374px) {
        .prouse .research .research__doctor.research__doctor--02 {
          height: 45vw;
          margin-bottom: 0; } }
      .prouse .research .research__doctor.research__doctor--02 .research__fish01 {
        top: 35px;
        left: 10px; }
      .prouse .research .research__doctor.research__doctor--02 .research__fish02 {
        top: 140px;
        left: 90px; }
      .prouse .research .research__doctor.research__doctor--02 .research__doctorImg {
        margin: 0 0 0 226px; }
        @media screen and (max-width: 768px) {
          .prouse .research .research__doctor.research__doctor--02 .research__doctorImg {
            margin: 0;
            margin-left: -20px; } }
      .prouse .research .research__doctor.research__doctor--02 p {
        position: absolute;
        top: 20px;
        left: 490px; }
        @media screen and (max-width: 768px) {
          .prouse .research .research__doctor.research__doctor--02 p {
            top: 0;
            left: 0; } }
    .prouse .research .research__doctor.research__doctor--03 {
      position: absolute;
      top: -73px;
      left: 50px;
      max-width: 170px; }
      @media screen and (max-width: 768px) {
        .prouse .research .research__doctor.research__doctor--03 {
          max-width: 25vw;
          top: -15vw;
          left: 3vw; } }

.prouse .repertoire {
  background-color: #7ab8d4;
  background-image: url("/assets/images/reason/repertoire_bg.jpg");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 700px;
  position: relative;
  text-align: center;
  overflow: hidden;
  padding-bottom: 120px; }
  @media screen and (max-width: 768px) {
    .prouse .repertoire {
      background-image: url("/assets/images/reason/repertoire_bg_sp.jpg");
      background-size: 100% 369px;
      padding-bottom: 80px; } }
  .prouse .repertoire .repertoire__bg {
    position: absolute;
    top: 450px;
    left: 0;
    width: 100%;
    height: 100%; }
    @media screen and (max-width: 768px) {
      .prouse .repertoire .repertoire__bg {
        top: 300px; } }
    .prouse .repertoire .repertoire__bg > div {
      margin: -150px 0; }
      @media screen and (max-width: 768px) {
        .prouse .repertoire .repertoire__bg > div {
          margin: -75px 0; } }
      .prouse .repertoire .repertoire__bg > div > div {
        display: block;
        width: 100%;
        height: 998px;
        background-repeat: repeat-x;
        background-position: left top;
        background-size: 2732px 100%; }
    .prouse .repertoire .repertoire__bg .repertoire__bg01 {
      -webkit-animation: anime_wabe-Y01 2s 0.2s ease-in-out infinite alternate;
              animation: anime_wabe-Y01 2s 0.2s ease-in-out infinite alternate; }
      .prouse .repertoire .repertoire__bg .repertoire__bg01 > div {
        height: 400px;
        -webkit-animation: anime_wabe-x01 260s linear infinite;
                animation: anime_wabe-x01 260s linear infinite; }
        @media screen and (max-width: 768px) {
          .prouse .repertoire .repertoire__bg .repertoire__bg01 > div {
            height: 300px; } }
    .prouse .repertoire .repertoire__bg .repertoire__bg02 {
      -webkit-animation: anime_wabe-Y02 2s 0.5s ease-in-out infinite alternate;
              animation: anime_wabe-Y02 2s 0.5s ease-in-out infinite alternate; }
      .prouse .repertoire .repertoire__bg .repertoire__bg02 > div {
        height: 600px;
        -webkit-animation: anime_wabe-x02 240s linear infinite;
                animation: anime_wabe-x02 240s linear infinite; }
        @media screen and (max-width: 768px) {
          .prouse .repertoire .repertoire__bg .repertoire__bg02 > div {
            height: 500px; } }
    .prouse .repertoire .repertoire__bg .repertoire__bg03 {
      -webkit-animation: anime_wabe-Y03 2s 0.8s ease-in-out infinite alternate;
              animation: anime_wabe-Y03 2s 0.8s ease-in-out infinite alternate; }
      .prouse .repertoire .repertoire__bg .repertoire__bg03 > div {
        height: 800px;
        -webkit-animation: anime_wabe-x01 220s linear infinite;
                animation: anime_wabe-x01 220s linear infinite; }
        @media screen and (max-width: 768px) {
          .prouse .repertoire .repertoire__bg .repertoire__bg03 > div {
            height: 700px; } }
    .prouse .repertoire .repertoire__bg .repertoire__bg04 {
      -webkit-animation: anime_wabe-Y04 2s 0s ease-in-out infinite alternate;
              animation: anime_wabe-Y04 2s 0s ease-in-out infinite alternate; }
      .prouse .repertoire .repertoire__bg .repertoire__bg04 > div {
        height: 998px;
        -webkit-animation: anime_wabe-x02 200s linear infinite;
                animation: anime_wabe-x02 200s linear infinite; }
        @media screen and (max-width: 768px) {
          .prouse .repertoire .repertoire__bg .repertoire__bg04 > div {
            height: 900px; } }
    .prouse .repertoire .repertoire__bg .repertoire__bg05 {
      -webkit-animation: anime_wabe-Y04 2s 0s ease-in-out infinite alternate;
              animation: anime_wabe-Y04 2s 0s ease-in-out infinite alternate; }
      .prouse .repertoire .repertoire__bg .repertoire__bg05 > div {
        height: 998px;
        -webkit-animation: anime_wabe-x01 200s linear infinite;
                animation: anime_wabe-x01 200s linear infinite; }
        @media screen and (max-width: 768px) {
          .prouse .repertoire .repertoire__bg .repertoire__bg05 > div {
            height: 1000px; } }
  .prouse .repertoire .repertoire__fish {
    width: 100%;
    max-width: 1024px;
    height: 100%;
    position: absolute;
    top: 50px;
    left: 50%;
    -webkit-transform: translatex(-50%);
            transform: translatex(-50%); }
    .prouse .repertoire .repertoire__fish .repertoire__fish01 {
      top: 300px;
      right: -270px;
      -webkit-animation-delay: 0.3s;
              animation-delay: 0.3s; }
      @media screen and (max-width: 768px) {
        .prouse .repertoire .repertoire__fish .repertoire__fish01 {
          top: 540px;
          right: 0px; } }
      .prouse .repertoire .repertoire__fish .repertoire__fish01 img {
        width: 202px; }
        @media screen and (max-width: 768px) {
          .prouse .repertoire .repertoire__fish .repertoire__fish01 img {
            width: 115px; } }
    .prouse .repertoire .repertoire__fish .repertoire__fish02 {
      top: 400px;
      left: -270px;
      -webkit-animation-delay: 1.6s;
              animation-delay: 1.6s; }
      @media screen and (max-width: 768px) {
        .prouse .repertoire .repertoire__fish .repertoire__fish02 {
          top: 630px;
          left: 20px; } }
      .prouse .repertoire .repertoire__fish .repertoire__fish02 img {
        width: 154px; }
        @media screen and (max-width: 768px) {
          .prouse .repertoire .repertoire__fish .repertoire__fish02 img {
            width: 115px; } }
    .prouse .repertoire .repertoire__fish .repertoire__fish03 {
      top: 850px;
      right: -270px;
      -webkit-animation-delay: 0.9s;
              animation-delay: 0.9s; }
      @media screen and (max-width: 768px) {
        .prouse .repertoire .repertoire__fish .repertoire__fish03 {
          top: 700px;
          right: 10px; } }
      .prouse .repertoire .repertoire__fish .repertoire__fish03 img {
        width: 202px; }
        @media screen and (max-width: 768px) {
          .prouse .repertoire .repertoire__fish .repertoire__fish03 img {
            width: 85px; } }
    .prouse .repertoire .repertoire__fish .repertoire__fish04 {
      top: 1000px;
      left: -270px;
      -webkit-animation-delay: 1.2s;
              animation-delay: 1.2s; }
      @media screen and (max-width: 768px) {
        .prouse .repertoire .repertoire__fish .repertoire__fish04 {
          display: none; } }
      .prouse .repertoire .repertoire__fish .repertoire__fish04 img {
        width: 267px; }
    .prouse .repertoire .repertoire__fish .repertoire__fish05 {
      top: 1400px;
      right: -270px;
      -webkit-animation-delay: 1.5s;
              animation-delay: 1.5s; }
      @media screen and (max-width: 768px) {
        .prouse .repertoire .repertoire__fish .repertoire__fish05 {
          display: none; } }
      .prouse .repertoire .repertoire__fish .repertoire__fish05 img {
        width: 154px; }
    .prouse .repertoire .repertoire__fish .repertoire__fish06 {
      top: 1500px;
      left: -270px; }
      @media screen and (max-width: 768px) {
        .prouse .repertoire .repertoire__fish .repertoire__fish06 {
          display: none; } }
      .prouse .repertoire .repertoire__fish .repertoire__fish06 img {
        width: 202px; }
  .prouse .repertoire .repertoire__inner {
    z-index: 2; }
  .prouse .repertoire .repertoire__ttl {
    margin-bottom: 60px;
    position: relative;
    z-index: 2; }
    @media screen and (max-width: 768px) {
      .prouse .repertoire .repertoire__ttl {
        margin-bottom: 33px; } }
  .prouse .repertoire .repertoire__lead {
    margin-bottom: 40px; }
  .prouse .repertoire .repertoire__detailImg {
    margin-bottom: 60px; }
  .prouse .repertoire .repertoire__listsTtl {
    margin-bottom: 40px; }
  .prouse .repertoire .repertoire__pickup {
    margin: 0; }
    @media screen and (max-width: 768px) {
      .prouse .repertoire .repertoire__pickup {
        margin: 0; } }
    .prouse .repertoire .repertoire__pickup .repertoire__pickupItems {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      margin: 0 -35px;
      /*a {
          @include hover {
            .repertoire__pickupImg {
              &:before {
                padding: 0;
              }
              img {
                transform: scale(1.05);
              }
            }
            .repertoire__pickupBtn {
              &:before {
                transform: translateX(5px) rotate(45deg) ;
              }
            }
          }
        }*/ }
      @media screen and (max-width: 768px) {
        .prouse .repertoire .repertoire__pickup .repertoire__pickupItems {
          -ms-flex-wrap: wrap;
              flex-wrap: wrap;
          margin: -15px -10px 0; } }
      .prouse .repertoire .repertoire__pickup .repertoire__pickupItems .repertoire__pickupItem {
        width: 274px;
        margin: 0 35px; }
        @media screen and (max-width: 768px) {
          .prouse .repertoire .repertoire__pickup .repertoire__pickupItems .repertoire__pickupItem {
            width: auto;
            max-width: 160px;
            margin: 15px 10px 0; } }
        @media screen and (max-width: 374px) {
          .prouse .repertoire .repertoire__pickup .repertoire__pickupItems .repertoire__pickupItem {
            width: 42vw; } }
      .prouse .repertoire .repertoire__pickup .repertoire__pickupItems .repertoire__pickupImg {
        border-radius: 50%;
        border: 2px solid #0e3158;
        position: relative; }
        .prouse .repertoire .repertoire__pickup .repertoire__pickupItems .repertoire__pickupImg:before {
          content: "";
          padding: 6px;
          -webkit-box-sizing: content-box;
                  box-sizing: content-box;
          display: block;
          width: 100%;
          height: 100%;
          border: 1px solid #0e3158;
          border-radius: 50%;
          position: absolute;
          top: 50%;
          left: 50%;
          -webkit-transform: translate(-50%, -50%);
                  transform: translate(-50%, -50%); }
          @media print, screen and (min-width: 769px) {
            .prouse .repertoire .repertoire__pickup .repertoire__pickupItems .repertoire__pickupImg:before {
              transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
              -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1); } }
          @media screen and (max-width: 768px) {
            .prouse .repertoire .repertoire__pickup .repertoire__pickupItems .repertoire__pickupImg:before {
              padding: 5px; } }
        .prouse .repertoire .repertoire__pickup .repertoire__pickupItems .repertoire__pickupImg div {
          overflow: hidden;
          border-radius: 50%; }
        @media print, screen and (min-width: 769px) {
          .prouse .repertoire .repertoire__pickup .repertoire__pickupItems .repertoire__pickupImg img {
            transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
            -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1); } }
      .prouse .repertoire .repertoire__pickup .repertoire__pickupItems .repertoire__pickupBtn {
        text-align: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        position: relative;
        z-index: 2;
        margin: -50px auto 0;
        width: 264px;
        min-height: 84px;
        background-image: url("/assets/images/reason/repertoire_btn_bg.png");
        background-repeat: no-repeat;
        background-position: center;
        background-size: 100% 100%;
        color: #0e3158;
        font-size: 1.6rem;
        line-height: 1.3;
        /*&:before {
            content: "";
            display: block;
            width: 10px;
            height: 10px;
            border-top: 2px solid #0e3158;
            border-right: 2px solid #0e3158;
            transform: rotate(45deg);
            position: absolute;
            top: 50%;
            right: 32px;
            margin-top: -9px;
            @include pc {
              @include transition;
            }
            @include sp {
              width: 6px;
              height: 6px;
              border-top: 1px solid #0e3158;
              border-right: 1px solid #0e3158;
              margin-top: -6px;
              right: 20px;
            }
          }*/ }
        @media screen and (max-width: 768px) {
          .prouse .repertoire .repertoire__pickup .repertoire__pickupItems .repertoire__pickupBtn {
            width: 98%;
            min-height: 49px;
            font-size: 1.1rem;
            letter-spacing: -0.05em; } }
        .prouse .repertoire .repertoire__pickup .repertoire__pickupItems .repertoire__pickupBtn span {
          display: block;
          font-size: 125%; }
        @media screen and (max-width: 768px) {
          .prouse .repertoire .repertoire__pickup .repertoire__pickupItems .repertoire__pickupBtn {
            margin: -30px auto 0; } }
  .prouse .repertoire .repertoire__list {
    border-radius: 24px;
    background-color: rgba(255, 255, 255, 0.4);
    padding: 50px 70px 35px;
    margin: 35px 0 0; }
    @media screen and (max-width: 768px) {
      .prouse .repertoire .repertoire__list {
        border-radius: 12px;
        padding: 40px 17px 20px;
        margin: 42px 0 0; } }
    .prouse .repertoire .repertoire__list .repertoire__listTtl {
      margin: -74px 0 18px; }
      @media screen and (max-width: 768px) {
        .prouse .repertoire .repertoire__list .repertoire__listTtl {
          margin: -56px -17px 15px; } }
    .prouse .repertoire .repertoire__list .repertoire__listLead {
      color: #3e3727;
      margin: 0 0 28px; }
      @media screen and (max-width: 768px) {
        .prouse .repertoire .repertoire__list .repertoire__listLead {
          margin: 0 0 20px;
          line-height: 1.5; } }
    .prouse .repertoire .repertoire__list .repertoire__listItems {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      margin: -30px -25px 0; }
      @media screen and (max-width: 768px) {
        .prouse .repertoire .repertoire__list .repertoire__listItems {
          margin: -20px -7px 0; } }
      .prouse .repertoire .repertoire__list .repertoire__listItems .repertoire__listItem {
        width: 260px;
        margin: 30px 25px 0; }
        @media screen and (max-width: 768px) {
          .prouse .repertoire .repertoire__list .repertoire__listItems .repertoire__listItem {
            width: auto;
            max-width: 147px;
            margin: 20px 7px 0; } }
        @media screen and (max-width: 374px) {
          .prouse .repertoire .repertoire__list .repertoire__listItems .repertoire__listItem {
            width: 37vw; } }
      .prouse .repertoire .repertoire__list .repertoire__listItems .repertoire__listImg {
        border-radius: 7px;
        border: 2px solid #0e3158;
        position: relative; }
        @media screen and (max-width: 768px) {
          .prouse .repertoire .repertoire__list .repertoire__listItems .repertoire__listImg {
            border-radius: 4px; } }
        .prouse .repertoire .repertoire__list .repertoire__listItems .repertoire__listImg:before {
          content: "";
          padding: 5px;
          -webkit-box-sizing: content-box;
                  box-sizing: content-box;
          display: block;
          width: 100%;
          height: 100%;
          border: 1px solid #0e3158;
          border-radius: 9px;
          position: absolute;
          top: 50%;
          left: 50%;
          -webkit-transform: translate(-50%, -50%);
                  transform: translate(-50%, -50%); }
          @media print, screen and (min-width: 769px) {
            .prouse .repertoire .repertoire__list .repertoire__listItems .repertoire__listImg:before {
              transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
              -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1); } }
          @media screen and (max-width: 768px) {
            .prouse .repertoire .repertoire__list .repertoire__listItems .repertoire__listImg:before {
              padding: 4px;
              border-radius: 4px; } }
        .prouse .repertoire .repertoire__list .repertoire__listItems .repertoire__listImg div {
          overflow: hidden;
          border-radius: 6px; }
          @media screen and (max-width: 768px) {
            .prouse .repertoire .repertoire__list .repertoire__listItems .repertoire__listImg div {
              border-radius: 3px; } }
        @media print, screen and (min-width: 769px) {
          .prouse .repertoire .repertoire__list .repertoire__listItems .repertoire__listImg img {
            transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
            -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1); } }
      .prouse .repertoire .repertoire__list .repertoire__listItems .repertoire__listLink {
        position: relative;
        margin: 14px auto 0;
        color: #0e3158;
        font-size: 1.6rem;
        line-height: 1.3; }
        @media screen and (max-width: 768px) {
          .prouse .repertoire .repertoire__list .repertoire__listItems .repertoire__listLink {
            font-size: 1.1rem;
            margin: 10px auto 0;
            letter-spacing: -0.05em; } }
        .prouse .repertoire .repertoire__list .repertoire__listItems .repertoire__listLink:before {
          content: none; }
          @media print, screen and (min-width: 769px) {
            .prouse .repertoire .repertoire__list .repertoire__listItems .repertoire__listLink:before {
              transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
              -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1); } }
          @media screen and (max-width: 768px) {
            .prouse .repertoire .repertoire__list .repertoire__listItems .repertoire__listLink:before {
              width: 6px;
              height: 6px;
              border-top: 1px solid #0e3158;
              border-right: 1px solid #0e3158;
              margin-top: -6px;
              right: 10px; } }
        .prouse .repertoire .repertoire__list .repertoire__listItems .repertoire__listLink span {
          display: block;
          font-size: 130%; }
      @media print, screen and (min-width: 769px) {
        .prouse .repertoire .repertoire__list .repertoire__listItems a:hover .repertoire__listImg:before {
          padding: 0; }
        .prouse .repertoire .repertoire__list .repertoire__listItems a:hover .repertoire__listImg img {
          -webkit-transform: scale(1.05);
                  transform: scale(1.05); }
        .prouse .repertoire .repertoire__list .repertoire__listItems a:hover .repertoire__listLink:before {
          -webkit-transform: translateX(5px) rotate(45deg);
                  transform: translateX(5px) rotate(45deg); } }
    .prouse .repertoire .repertoire__list .repertoire__btn {
      margin-top: 20px; }
      .prouse .repertoire .repertoire__list .repertoire__btn a {
        background-image: url("/assets/images/prouse/repertoire_btn_bg.png"); }
  .prouse .repertoire .repertoire__doctor {
    width: 100%;
    position: absolute;
    bottom: -225px;
    left: 0; }
    @media screen and (max-width: 768px) {
      .prouse .repertoire .repertoire__doctor {
        max-width: 375px;
        bottom: -255px;
        left: 50%;
        -webkit-transform: translateX(-50%);
                transform: translateX(-50%); } }
    .prouse .repertoire .repertoire__doctor .repertoire__fish01 {
      top: 40px;
      left: 350px; }
      @media screen and (max-width: 768px) {
        .prouse .repertoire .repertoire__doctor .repertoire__fish01 {
          top: 20px;
          left: 250px; } }
      .prouse .repertoire .repertoire__doctor .repertoire__fish01 img {
        width: 152px; }
        @media screen and (max-width: 768px) {
          .prouse .repertoire .repertoire__doctor .repertoire__fish01 img {
            width: 75px; } }
    .prouse .repertoire .repertoire__doctor .repertoire__fish02 {
      top: 150px;
      left: 50px;
      -webkit-animation-delay: 1.2s;
              animation-delay: 1.2s; }
      @media screen and (max-width: 768px) {
        .prouse .repertoire .repertoire__doctor .repertoire__fish02 {
          top: 80px;
          left: 50px; } }
      .prouse .repertoire .repertoire__doctor .repertoire__fish02 img {
        width: 96px; }
        @media screen and (max-width: 768px) {
          .prouse .repertoire .repertoire__doctor .repertoire__fish02 img {
            width: 50px; } }
    .prouse .repertoire .repertoire__doctor .repertoire__doctorImg {
      position: relative;
      z-index: 2;
      margin: 0 0 0 -520px;
      -webkit-animation: anime_vertical 1s 0.9s ease-in-out infinite alternate;
              animation: anime_vertical 1s 0.9s ease-in-out infinite alternate; }
      @media screen and (max-width: 768px) {
        .prouse .repertoire .repertoire__doctor .repertoire__doctorImg {
          margin: 0;
          top: -10px; } }
    .prouse .repertoire .repertoire__doctor p {
      position: absolute;
      top: 6px;
      left: 502px; }
      @media screen and (max-width: 768px) {
        .prouse .repertoire .repertoire__doctor p {
          top: 0;
          left: 0; } }
    .prouse .repertoire .repertoire__doctor.is-animate {
      opacity: 0; }
      .prouse .repertoire .repertoire__doctor.is-animate p {
        opacity: 0;
        -webkit-transform: translateY(50px);
                transform: translateY(50px); }
      .prouse .repertoire .repertoire__doctor.is-animate.is-animated {
        -webkit-animation: animate--fadeIn 0.5s forwards;
                animation: animate--fadeIn 0.5s forwards; }
        .prouse .repertoire .repertoire__doctor.is-animate.is-animated p {
          -webkit-animation: animate--fadeInUp 0.5s 0.4s forwards;
                  animation: animate--fadeInUp 0.5s 0.4s forwards; }
  .prouse .repertoire .repertoire__deco figure {
    position: absolute; }
  .prouse .repertoire .repertoire__deco .repertoire__deco01 {
    top: -10px;
    right: -156px;
    -webkit-animation: anime_vertical 1s 0.2s ease-in-out infinite alternate;
            animation: anime_vertical 1s 0.2s ease-in-out infinite alternate; }
    @media screen and (max-width: 768px) {
      .prouse .repertoire .repertoire__deco .repertoire__deco01 {
        width: 122px;
        top: 10px;
        right: -10px; } }
  .prouse .repertoire .repertoire__deco .repertoire__deco02 {
    width: 157px;
    top: 127px;
    left: -90px;
    -webkit-animation: anime_vertical 1s 0.5s ease-in-out infinite alternate;
            animation: anime_vertical 1s 0.5s ease-in-out infinite alternate; }
    @media screen and (max-width: 768px) {
      .prouse .repertoire .repertoire__deco .repertoire__deco02 {
        width: 110px;
        top: 65px;
        left: -31px; } }

.prouse .repertoire__accordionWrap {
  display: none; }
  .prouse .repertoire__accordionWrap .repertoire__accordion {
    opacity: 0; }
  .prouse .repertoire__accordionWrap.is-open .repertoire__accordion {
    opacity: 1;
    -webkit-transition: opacity 1.0s 0.3s;
    transition: opacity 1.0s 0.3s; }

.prouse .repertoire__accordionBtn {
  position: relative;
  display: inline-block;
  margin: 30px 0 0;
  z-index: 10;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
  cursor: pointer; }
  @media screen and (max-width: 768px) {
    .prouse .repertoire__accordionBtn {
      width: 64%; } }
  @media print, screen and (min-width: 769px) {
    .prouse .repertoire__accordionBtn:before {
      content: "";
      display: block;
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      background: url("/assets/images/reason/accordion_btn_fish.png") no-repeat center top;
      background-size: 100%;
      opacity: 1; } }
  @media print, screen and (min-width: 769px) {
    .prouse .repertoire__accordionBtn:after {
      content: "";
      display: block;
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      background: url("/assets/images/reason/accordion_btn_text.png") no-repeat center top;
      background-size: 100%; } }
  .prouse .repertoire__accordionBtn:hover:before {
    opacity: 0; }
  .prouse .repertoire__accordionBtn.is-open {
    opacity: 0;
    cursor: default; }
    .prouse .repertoire__accordionBtn.is-open.is-end {
      margin: 0;
      height: 0;
      overflow: hidden; }

@-webkit-keyframes anime_wabe-x01 {
  0% {
    background-position: 0 0; }
  100% {
    background-position: -2732px 0; } }

@keyframes anime_wabe-x01 {
  0% {
    background-position: 0 0; }
  100% {
    background-position: -2732px 0; } }

@-webkit-keyframes anime_wabe-x02 {
  0% {
    background-position: 0 0; }
  100% {
    background-position: 2732px 0; } }

@keyframes anime_wabe-x02 {
  0% {
    background-position: 0 0; }
  100% {
    background-position: 2732px 0; } }

@-webkit-keyframes anime_wabe-Y01 {
  100% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px); } }

@keyframes anime_wabe-Y01 {
  100% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px); } }

@-webkit-keyframes anime_wabe-Y02 {
  100% {
    -webkit-transform: translateY(-15px);
            transform: translateY(-15px); } }

@keyframes anime_wabe-Y02 {
  100% {
    -webkit-transform: translateY(-15px);
            transform: translateY(-15px); } }

@-webkit-keyframes anime_wabe-Y03 {
  100% {
    -webkit-transform: translateY(-20px);
            transform: translateY(-20px); } }

@keyframes anime_wabe-Y03 {
  100% {
    -webkit-transform: translateY(-20px);
            transform: translateY(-20px); } }

@-webkit-keyframes anime_wabe-Y04 {
  100% {
    -webkit-transform: translateY(-25px);
            transform: translateY(-25px); } }

@keyframes anime_wabe-Y04 {
  100% {
    -webkit-transform: translateY(-25px);
            transform: translateY(-25px); } }

@-webkit-keyframes anime_vertical {
  100% {
    -webkit-transform: translateY(5px);
            transform: translateY(5px); } }

@keyframes anime_vertical {
  100% {
    -webkit-transform: translateY(5px);
            transform: translateY(5px); } }

.prouse .contact {
  background: #0e3056;
  padding-top: 70px;
  padding-bottom: 130px; }
  @media screen and (max-width: 768px) {
    .prouse .contact {
      padding-top: 35px;
      padding-bottom: 80px; } }
  .prouse .contact:before {
    content: "";
    display: block;
    width: 100%;
    height: 40px;
    position: absolute;
    bottom: 100%;
    left: 0;
    margin-bottom: -2px;
    background-image: url("/assets/images/prouse/contact_bg_top.png");
    background-repeat: repeat-x;
    background-position: center bottom; }
    @media screen and (max-width: 768px) {
      .prouse .contact:before {
        background-size: 375px 20px; } }
  .prouse .contact .contact__inner {
    position: relative;
    z-index: 2; }
  .prouse .contact .contact__detail {
    margin: -10px auto 0;
    max-width: 900px; }
    @media screen and (max-width: 768px) {
      .prouse .contact .contact__detail {
        margin: 0 10px; } }
    .prouse .contact .contact__detail .c-frame--02__center {
      padding-bottom: 20px;
      padding: 15px 65px 25px; }
      @media screen and (max-width: 768px) {
        .prouse .contact .contact__detail .c-frame--02__center {
          padding: 20px 10px 30px; } }
    .prouse .contact .contact__detail .contact__media {
      position: relative;
      color: #3e3727;
      text-align: center; }
      @media screen and (max-width: 768px) {
        .prouse .contact .contact__detail .contact__media {
          padding: 0; } }
      .prouse .contact .contact__detail .contact__media .contact__mediaTtl {
        font-size: 2.2rem;
        margin-bottom: 15px;
        line-height: 1.5; }
        @media screen and (max-width: 768px) {
          .prouse .contact .contact__detail .contact__media .contact__mediaTtl {
            font-size: 1.7rem;
            font-weight: 600;
            margin-bottom: 20px;
            text-align: center; } }
      .prouse .contact .contact__detail .contact__media .contact__info {
        text-align: center;
        font-size: 0; }
        .prouse .contact .contact__detail .contact__media .contact__info li {
          font-size: 3rem;
          text-align: left; }
          @media print, screen and (min-width: 769px) {
            .prouse .contact .contact__detail .contact__media .contact__info li {
              display: inline-block;
              vertical-align: top;
              margin: 0 20px; } }
          @media screen and (max-width: 768px) {
            .prouse .contact .contact__detail .contact__media .contact__info li {
              text-align: center; } }
          .prouse .contact .contact__detail .contact__media .contact__info li p {
            line-height: 1; }
          @media screen and (max-width: 768px) {
            .prouse .contact .contact__detail .contact__media .contact__info li .contact__infoTelTxt {
              font-size: 2.6rem; } }
          .prouse .contact .contact__detail .contact__media .contact__info li .contact__infoTelTxt span {
            position: relative; }
          .prouse .contact .contact__detail .contact__media .contact__info li .contact__infoTelTxt span,
          .prouse .contact .contact__detail .contact__media .contact__info li .contact__infoTelTxt a {
            position: relative; }
            .prouse .contact .contact__detail .contact__media .contact__info li .contact__infoTelTxt span:before,
            .prouse .contact .contact__detail .contact__media .contact__info li .contact__infoTelTxt a:before {
              content: "";
              display: block;
              width: 24px;
              height: 24px;
              position: absolute;
              top: 8px;
              left: -25px;
              background: url("/assets/images/prouse/contact_icon_tel.png") no-repeat center top;
              background-size: 100%; }
              @media print, screen and (min-width: 769px) {
                .prouse .contact .contact__detail .contact__media .contact__info li .contact__infoTelTxt span:before,
                .prouse .contact .contact__detail .contact__media .contact__info li .contact__infoTelTxt a:before {
                  width: 30px;
                  height: 30px;
                  top: 7px;
                  left: -28px; } }
        .prouse .contact .contact__detail .contact__media .contact__info .contact__infoTelTime {
          font-size: 1.4rem;
          font-weight: normal;
          margin-top: 10px; }
        .prouse .contact .contact__detail .contact__media .contact__info .contact__infoMail {
          font-size: 2.8rem; }
          @media screen and (max-width: 768px) {
            .prouse .contact .contact__detail .contact__media .contact__info .contact__infoMail {
              margin-top: 20px;
              font-size: 2rem; } }
          @media print, screen and (min-width: 769px) {
            .prouse .contact .contact__detail .contact__media .contact__info .contact__infoMail a {
              position: relative; } }
          .prouse .contact .contact__detail .contact__media .contact__info .contact__infoMail span,
          .prouse .contact .contact__detail .contact__media .contact__info .contact__infoMail a {
            position: relative;
            display: inline-block;
            padding-left: 30px; }
            .prouse .contact .contact__detail .contact__media .contact__info .contact__infoMail span:before,
            .prouse .contact .contact__detail .contact__media .contact__info .contact__infoMail a:before {
              content: "";
              display: block;
              width: 24px;
              height: 24px;
              position: absolute;
              top: -2px;
              left: 0;
              background: url("/assets/images/prouse/contact_icon_mail.png") no-repeat center top;
              background-size: 100%; }
              @media print, screen and (min-width: 769px) {
                .prouse .contact .contact__detail .contact__media .contact__info .contact__infoMail span:before,
                .prouse .contact .contact__detail .contact__media .contact__info .contact__infoMail a:before {
                  width: 30px;
                  height: 30px;
                  top: 0;
                  left: 0; } }
    .prouse .contact .contact__detail .contact__detailBtn {
      margin: 30px auto 0;
      max-width: 300px; }
      @media screen and (max-width: 768px) {
        .prouse .contact .contact__detail .contact__detailBtn {
          margin: 20px auto 0; } }
      .prouse .contact .contact__detail .contact__detailBtn + .contact__detailBtn {
        margin-top: 12px; }
        @media screen and (max-width: 768px) {
          .prouse .contact .contact__detail .contact__detailBtn + .contact__detailBtn {
            margin-top: 10px; } }
  .prouse .contact .contact__doctor {
    position: relative;
    width: 100%;
    margin: 0 0 -20px; }
    @media screen and (max-width: 768px) {
      .prouse .contact .contact__doctor {
        width: auto;
        margin: 0 auto 17px; } }
    .prouse .contact .contact__doctor .contact__fish01 {
      top: 40px;
      left: 870px; }
      @media screen and (max-width: 768px) {
        .prouse .contact .contact__doctor .contact__fish01 {
          display: none; } }
      .prouse .contact .contact__doctor .contact__fish01 img {
        width: 152px; }
    .prouse .contact .contact__doctor .contact__fish02 {
      top: 130px;
      left: 920px;
      -webkit-animation-delay: 1.2s;
              animation-delay: 1.2s; }
      @media screen and (max-width: 768px) {
        .prouse .contact .contact__doctor .contact__fish02 {
          display: none; } }
      .prouse .contact .contact__doctor .contact__fish02 img {
        width: 96px; }
    .prouse .contact .contact__doctor .contact__doctorImg {
      position: relative;
      z-index: 2;
      margin: 0 0 0 593px; }
      @media screen and (max-width: 768px) {
        .prouse .contact .contact__doctor .contact__doctorImg {
          margin: 0 -15px; } }
    .prouse .contact .contact__doctor p {
      width: 622px;
      position: absolute;
      top: 28px;
      left: -12px; }
      @media screen and (max-width: 768px) {
        .prouse .contact .contact__doctor p {
          width: calc(100% + 30px);
          top: 0;
          left: -15px; } }
    .prouse .contact .contact__doctor.is-animate {
      opacity: 0; }
      .prouse .contact .contact__doctor.is-animate .contact__doctorImg {
        opacity: 0;
        -webkit-transform: translateX(-100px);
                transform: translateX(-100px); }
      .prouse .contact .contact__doctor.is-animate p {
        opacity: 0;
        -webkit-transform: translateY(50px);
                transform: translateY(50px); }
      .prouse .contact .contact__doctor.is-animate.is-animated {
        -webkit-animation: animate--fadeIn 0.5s forwards;
                animation: animate--fadeIn 0.5s forwards; }
        .prouse .contact .contact__doctor.is-animate.is-animated .contact__doctorImg {
          -webkit-animation: animate--fadeInRight 0.5s 0.2s forwards;
                  animation: animate--fadeInRight 0.5s 0.2s forwards; }
        .prouse .contact .contact__doctor.is-animate.is-animated p {
          -webkit-animation: animate--fadeInUp 0.5s 0.4s forwards;
                  animation: animate--fadeInUp 0.5s 0.4s forwards; }
/*# sourceMappingURL=prouse.css.map */