/*! Writen  by SCSS */
.wrap {
  overflow: hidden;
  font-family: "Shippori Mincho", serif;
  font-weight: 400;
  font-style: normal; }

.en {
  font-weight: 400; }

.marker {
  background: linear-gradient(transparent 55%, #FF9 55%, #FF9 100%, transparent 100%); }

.sec01 {
  padding: clamp(50px, 8.334vw, 100px) 0 clamp(50px, 8.334vw, 100px); }
  .sec01 .midashi_group .sec_head {
    font-size: clamp(20px, 3.334vw, 40px);
    color: #007272; }
  .sec01 .tab_group {
    margin: clamp(60px, 8.334vw, 100px) 0 clamp(80px, 10vw, 120px); }
    @media screen and (max-width: 480px) {
      .sec01 .tab_group {
        margin: 50px 0 60px;
        flex-wrap: wrap;
        justify-content: center;
        gap: 30px 4%; } }
    .sec01 .tab_group a {
      width: 30.84%;
      display: flex;
      flex-direction: column;
      row-gap: 15px; }
      @media screen and (max-width: 480px) {
        .sec01 .tab_group a {
          width: 48%; } }
      body:not(.mobile) .sec01 .tab_group a:hover .family_group .f02 .arrow {
        animation: up_down 0.5s infinite alternate; }
      .sec01 .tab_group a .photo {
        position: relative; }
        .sec01 .tab_group a .photo .num {
          position: absolute;
          inset: 0;
          bottom: auto;
          font-size: clamp(20px, 2.5vw, 30px);
          color: #007272;
          text-align: center;
          transform: translateY(-50%);
          font-weight: 400; }
          @media screen and (max-width: 480px) {
            .sec01 .tab_group a .photo .num {
              font-size: 5vw; } }
          .sec01 .tab_group a .photo .num .big {
            display: inline-block;
            font-size: 200%;
            line-height: 1; }
      .sec01 .tab_group a .family_group {
        align-items: center;
        flex-direction: column;
        font-size: clamp(12px, 1.334vw, 16px); }
        @media screen and (max-width: 480px) {
          .sec01 .tab_group a .family_group {
            font-size: 12px; } }
        .sec01 .tab_group a .family_group .f01 {
          font-size: 160%;
          padding-bottom: 15px;
          margin-bottom: 15px;
          line-height: 1.2;
          position: relative; }
          @media screen and (max-width: 480px) {
            .sec01 .tab_group a .family_group .f01 {
              padding-bottom: 10px;
              margin-bottom: 10px;
              font-size: 140%; } }
          .sec01 .tab_group a .family_group .f01:after {
            content: "";
            position: absolute;
            inset: 0;
            top: auto;
            width: 40px;
            margin: auto;
            height: 1px;
            background: #007272; }
        .sec01 .tab_group a .family_group .f02 {
          display: flex;
          flex-direction: column;
          align-items: center; }
@keyframes up_down {
  0% {
    transform: translateY(0); }
  100% {
    transform: translateY(6px); } }
  .sec01 .voice_group {
    flex-direction: column;
    row-gap: clamp(50px, 6.25vw, 75px); }
    .sec01 .voice_group .voice_in:nth-of-type(2n) {
      padding: clamp(50px, 7.5vw, 90px) 0 clamp(40px, 6.667vw, 80px);
      background: rgba(0, 114, 114, 0.05); }
    .sec01 .voice_group .voice_in .family_group {
      position: relative;
      margin-bottom: clamp(50px, 6.667vw, 80px); }
      .sec01 .voice_group .voice_in .family_group .family_num {
        font-size: clamp(50px, 5.313vw, 85px);
        color: rgba(0, 114, 114, 0.5);
        letter-spacing: 0.05em;
        padding-top: 30px;
        margin-bottom: clamp(60px, 8.334vw, 100px);
        line-height: 1; }
        @media screen and (max-width: 820px) {
          .sec01 .voice_group .voice_in .family_group .family_num {
            font-size: 6vw;
            margin-bottom: 30px; } }
        @media screen and (max-width: 480px) {
          .sec01 .voice_group .voice_in .family_group .family_num {
            padding-top: 0;
            font-size: 8vw;
            margin-bottom: 10px;
            text-align: center; } }
        .sec01 .voice_group .voice_in .family_group .family_num .big {
          font-size: 200%;
          display: inline-block; }
      .sec01 .voice_group .voice_in .family_group .family_photo {
        position: absolute;
        right: 0;
        top: 0;
        width: 50%;
        z-index: 1; }
        @media screen and (max-width: 480px) {
          .sec01 .voice_group .voice_in .family_group .family_photo {
            inset: auto;
            position: relative;
            width: 100%; } }
        .sec01 .voice_group .voice_in .family_group .family_photo .sub {
          position: absolute;
          left: -30px;
          top: 30px;
          width: 100%;
          z-index: -1; }
          @media screen and (max-width: 480px) {
            .sec01 .voice_group .voice_in .family_group .family_photo .sub {
              left: -10px;
              top: 10px; } }
        .sec01 .voice_group .voice_in .family_group .family_photo img {
          width: 100%; }
      .sec01 .voice_group .voice_in .family_group .family_info {
        position: relative;
        padding: 30px;
        color: #FFF;
        display: flex;
        flex-direction: column;
        row-gap: clamp(25px, 2.5vw, 40px); }
        @media screen and (max-width: 820px) {
          .sec01 .voice_group .voice_in .family_group .family_info {
            padding: 20px;
            row-gap: 20px; } }
        @media screen and (max-width: 480px) {
          .sec01 .voice_group .voice_in .family_group .family_info {
            margin-top: 20px;
            row-gap: 15px;
            padding: 15px;
            text-align: center;
            padding-left: 0; } }
        .sec01 .voice_group .voice_in .family_group .family_info:before {
          content: "";
          position: absolute;
          width: 100vw;
          inset: 0;
          left: auto;
          right: 16.66%;
          z-index: -1;
          background: #007272; }
          @media screen and (max-width: 480px) {
            .sec01 .voice_group .voice_in .family_group .family_info:before {
              right: 0; } }
        .sec01 .voice_group .voice_in .family_group .family_info .info_txt {
          font-size: clamp(14px, 2.125vw, 34px);
          line-height: 1.85; }
          @media screen and (max-width: 480px) {
            .sec01 .voice_group .voice_in .family_group .family_info .info_txt {
              font-size: 4.6vw;
              line-height: 1.4; } }
        .sec01 .voice_group .voice_in .family_group .family_info .info_txt02 {
          font-size: clamp(11px, 1vw, 16px); }
          @media screen and (max-width: 480px) {
            .sec01 .voice_group .voice_in .family_group .family_info .info_txt02 {
              font-size: 12px; } }
          .sec01 .voice_group .voice_in .family_group .family_info .info_txt02 .big {
            display: block;
            font-size: 160%; }
            @media screen and (max-width: 480px) {
              .sec01 .voice_group .voice_in .family_group .family_info .info_txt02 .big {
                font-size: 140%;
                display: inline-block; } }
    .sec01 .voice_group .voice_in .photo_txt_group {
      flex-direction: column; }
      @media screen and (max-width: 480px) {
        .sec01 .voice_group .voice_in .photo_txt_group {
          row-gap: 50px; } }
      .sec01 .voice_group .voice_in .photo_txt_group .item {
        align-items: flex-start; }
        @media screen and (max-width: 480px) {
          .sec01 .voice_group .voice_in .photo_txt_group .item {
            flex-direction: column;
            row-gap: 20px; } }
        .sec01 .voice_group .voice_in .photo_txt_group .item.rev {
          flex-direction: row-reverse; }
          @media screen and (max-width: 480px) {
            .sec01 .voice_group .voice_in .photo_txt_group .item.rev {
              flex-direction: column; } }
        .sec01 .voice_group .voice_in .photo_txt_group .item .photo_group {
          width: 41.67%; }
          @media screen and (max-width: 480px) {
            .sec01 .voice_group .voice_in .photo_txt_group .item .photo_group {
              width: 100%; } }
          .sec01 .voice_group .voice_in .photo_txt_group .item .photo_group .photo_sub_group {
            margin-top: 20px; }
            @media screen and (max-width: 480px) {
              .sec01 .voice_group .voice_in .photo_txt_group .item .photo_group .photo_sub_group {
                margin-top: 15px; } }
            .sec01 .voice_group .voice_in .photo_txt_group .item .photo_group .photo_sub_group .photo_sub.right {
              margin-left: auto; }
        .sec01 .voice_group .voice_in .photo_txt_group .item .text_group {
          width: 54.17%;
          flex-direction: column;
          row-gap: clamp(15px, 1.875vw, 30px); }
          @media screen and (max-width: 480px) {
            .sec01 .voice_group .voice_in .photo_txt_group .item .text_group {
              width: 100%; } }
          .sec01 .voice_group .voice_in .photo_txt_group .item .text_group.bottom {
            margin-top: clamp(20px, 3.334vw, 40px); }
            @media screen and (max-width: 480px) {
              .sec01 .voice_group .voice_in .photo_txt_group .item .text_group.bottom {
                margin-top: 0; } }
          .sec01 .voice_group .voice_in .photo_txt_group .item .text_group .ttl {
            font-size: clamp(20px, 2.834vw, 34px);
            color: #007272;
            line-height: 1.4; }
            @media screen and (max-width: 480px) {
              .sec01 .voice_group .voice_in .photo_txt_group .item .text_group .ttl {
                font-size: 4.8vw; } }
          .sec01 .voice_group .voice_in .photo_txt_group .item .text_group .read {
            letter-spacing: -0.03em; }
        .sec01 .voice_group .voice_in .photo_txt_group .item.message {
          position: relative;
          align-items: center;
          padding: 0 clamp(20px, 3.334vw, 40px) 30px; }
          @media screen and (max-width: 480px) {
            .sec01 .voice_group .voice_in .photo_txt_group .item.message {
              flex-direction: column;
              row-gap: 30px;
              padding: 0; } }
          .sec01 .voice_group .voice_in .photo_txt_group .item.message:before {
            content: "";
            position: absolute;
            inset: 0;
            top: clamp(30px, 4.167vw, 50px);
            background: rgba(0, 114, 114, 0.1);
            z-index: -1; }
          .sec01 .voice_group .voice_in .photo_txt_group .item.message .photo_group {
            width: 41.08%; }
            @media screen and (max-width: 480px) {
              .sec01 .voice_group .voice_in .photo_txt_group .item.message .photo_group {
                width: 100%; } }
            .sec01 .voice_group .voice_in .photo_txt_group .item.message .photo_group .photo_sub_group {
              margin-top: 20px; }
          .sec01 .voice_group .voice_in .photo_txt_group .item.message .text_group {
            width: 53.58%;
            row-gap: 20px; }
            @media screen and (max-width: 480px) {
              .sec01 .voice_group .voice_in .photo_txt_group .item.message .text_group {
                width: 100%;
                row-gap: 15px;
                padding: 0 20px 20px; } }
            .sec01 .voice_group .voice_in .photo_txt_group .item.message .text_group .message_ttl {
              width: 52.5%; }
              @media screen and (max-width: 480px) {
                .sec01 .voice_group .voice_in .photo_txt_group .item.message .text_group .message_ttl {
                  width: 60%;
                  margin: 0 auto; } }
        .sec01 .voice_group .voice_in .photo_txt_group .item.item01_1 .photo_group .photo_sub_group .photo_sub {
          width: 52%; }
          .sec01 .voice_group .voice_in .photo_txt_group .item.item01_1 .photo_group .photo_sub_group .photo_sub.right {
            margin-left: auto; }
        .sec01 .voice_group .voice_in .photo_txt_group .item.item01_2 .photo_sub_group {
          justify-content: center;
          align-items: center;
          column-gap: 20px; }
          .sec01 .voice_group .voice_in .photo_txt_group .item.item01_2 .photo_sub_group .photo01 .cap {
            right: auto;
            left: -20px;
            bottom: -20px;
            line-height: 1.4; }
        .sec01 .voice_group .voice_in .photo_txt_group .item.item02_2 {
          margin-top: clamp(40px, 5vw, 60px); }
          @media screen and (max-width: 480px) {
            .sec01 .voice_group .voice_in .photo_txt_group .item.item02_2 {
              margin-top: 0; } }
          .sec01 .voice_group .voice_in .photo_txt_group .item.item02_2 .photo_sub_group .photo01 {
            width: 60%; }
        .sec01 .voice_group .voice_in .photo_txt_group .item.item03_1 .photo_group .photo_sub_group .photo_sub {
          width: 60%;
          margin-left: auto; }
        .sec01 .voice_group .voice_in .photo_txt_group .item.item03_2 {
          margin-bottom: clamp(40px, 5.834vw, 70px); }
          @media screen and (max-width: 480px) {
            .sec01 .voice_group .voice_in .photo_txt_group .item.item03_2 {
              margin-bottom: 0; } }

.sec02 {
  padding-bottom: clamp(50px, 6.667vw, 80px);
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url("../images/voice/bg_point.jpg"); }
  .sec02 .point_ttl {
    width: 100%;
    position: relative;
    font-size: clamp(16px, 2.834vw, 34px);
    color: #FFF;
    text-align: center;
    margin-bottom: 20px; }
    @media screen and (max-width: 480px) {
      .sec02 .point_ttl {
        font-size: 4.6vw; } }
    .sec02 .point_ttl .en {
      font-size: 588%;
      line-height: 0.9;
      color: rgba(255, 255, 255, 0.05); }
    .sec02 .point_ttl .jp {
      position: absolute;
      inset: 0;
      display: flex;
      justify-content: center;
      align-items: center; }
  .sec02 .point_group {
    flex-wrap: wrap;
    gap: 30px 0; }
    .sec02 .point_group .item {
      width: 30%;
      display: flex;
      flex-direction: column;
      row-gap: 20px; }
      @media screen and (max-width: 480px) {
        .sec02 .point_group .item {
          width: 48%;
          row-gap: 15px; } }
      .sec02 .point_group .item .item_ttl {
        font-size: clamp(14px, 2vw, 24px);
        color: #ffff00;
        text-align: center;
        line-height: 1.5; }
        @media screen and (max-width: 480px) {
          .sec02 .point_group .item .item_ttl {
            font-size: 3.7vw; } }
      .sec02 .point_group .item .item_read {
        background: #FFF;
        padding: 12px 15px;
        position: relative;
        border-radius: 10px; }
        .sec02 .point_group .item .item_read:after {
          content: "";
          position: absolute;
          left: 20px;
          bottom: calc(100% - 1px);
          background: #FFF;
          width: 20px;
          aspect-ratio: 3/2;
          clip-path: polygon(50% 0%, 0% 100%, 100% 100%); }
        .sec02 .point_group .item .item_read .read {
          letter-spacing: -0.05em;
          line-height: 1.5; }
      .sec02 .point_group .item .cap {
        font-feature-settings: "palt";
        text-shadow: 0px 0px 0px rgba(0, 0, 0, 0.8), 0px 0px 1px rgba(0, 0, 0, 0.8), 0px 0px 2px rgba(0, 0, 0, 0.8), 0px 0px 3px rgba(0, 0, 0, 0.8), 0px 0px 4px rgba(0, 0, 0, 0.8), 0px 0px 5px rgba(0, 0, 0, 0.8), 0px 0px 6px rgba(0, 0, 0, 0.8), 0px 0px 7px rgba(0, 0, 0, 0.8), 0px 0px 8px rgba(0, 0, 0, 0.8), 0px 0px 9px rgba(0, 0, 0, 0.8), 0px 0px 10px rgba(0, 0, 0, 0.8); }
        @media screen and (max-width: 480px) {
          .sec02 .point_group .item .cap {
            letter-spacing: 0;
            font-size: 8px;
            line-height: 1.4; } }
        .sec02 .point_group .item .cap.left {
          right: auto;
          left: 3px;
          text-align: left; }

/*# sourceMappingURL=voice.css.map */
