/* CSS Document */
body {
  position: relative;
  --bg-x: 0px;
  --bg-y: 0px; }
  body:before {
    content: "";
    position: absolute;
    inset: -40px;
    background: url("../images/global/index_bg.png") center top no-repeat;
    background-size: 100% auto;
    transform: translate3d(var(--bg-x), var(--bg-y), 0);
    z-index: 0;
    pointer-events: none;
    aspect-ratio: 1868/832;
    width: 100%;
    max-width: 1920px;
    height: auto;
    z-index: -1; }

/*min-width:1920px*/
/*max-width:1280px*/
/*max-width:1024px*/
@media (max-width: 768px) {
  body:before {
    position: absolute;
    background: url("../images/global/index_bg_sp.png") left top no-repeat;
    background-size: 75%;
    aspect-ratio: 709/1416; } }
/*max-width:768px*/
@media (max-width: 480px) {
  body:before {
    background: url("../images/global/index_bg_sp.png") left top no-repeat;
    background-size: 100%; } }
/*max-width:480px*/
/************************************/
.mv {
  position: relative; }

.mv_all {
  --bg-x: 0px;
  --bg-y: 0px;
  padding: clamp(120px, 13vw, 250px) 0 80px;
  max-width: 1920px;
  width: 100%;
  margin: 0 auto;
  position: relative;
  z-index: 5; }
  .mv_all > p {
    /*max-width: 1730px;
    width: calc(100% - 80px);
    margin: 0 auto;
    font-size:clamp(3.6rem, 5.5vw, 8.1rem);
    line-height: 1.0;
    font-family: $in;
    font-weight: 700;
    color: #DEDBE7;
    position: relative;
    z-index: 5;*/ }
  .mv_all .mv_txt {
    max-width: 1730px;
    width: calc(100% - 80px);
    margin: 0 auto;
    position: relative;
    z-index: 5; }
    .mv_all .mv_txt p {
      overflow: hidden;
      text-indent: 100%;
      white-space: nowrap;
      background: url("../images/global/mv_txt.svg") center center no-repeat;
      background-size: contain;
      aspect-ratio: 1370/153;
      width: 100%;
      max-width: 1370px;
      height: auto; }

.mv_flex {
  position: absolute;
  z-index: 1;
  top: clamp(-20px, -1.2vw, 0px);
  right: 5.0vw;
  width: clamp(420px, 50vw, 830px);
  transition: .3s; }
  .mv_flex .swiper {
    aspect-ratio: 1 / 1;
    width: 100%;
    height: auto;
    overflow: hidden;
    border-radius: 50%; }
    .mv_flex .swiper.sliderA {
      width: 39%;
      max-width: 300px;
      margin: 0 0 0 auto; }
    .mv_flex .swiper.sliderB {
      width: 72%;
      max-width: 580px;
      margin: -5vw 0 0; }
    .mv_flex .swiper.sliderC {
      width: 39%;
      max-width: 300px;
      margin: -2.5vw 0 0 auto; }
  .mv_flex .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover; }

.mv_box {
  margin: 0 auto 105px;
  max-width: 1530px;
  width: calc(100% - 80px);
  position: relative; }
  .mv_box h1 {
    position: relative;
    z-index: 1;
    font-size: clamp(3.2rem, 6vw, 8rem);
    line-height: 1.5;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    margin-bottom: 25px; }
    .mv_box h1 span {
      color: #5A4398; }
  .mv_box p {
    position: relative;
    z-index: 1;
    width: fit-content;
    border-top: 1px solid #ccc;
    padding: 25px 0 0 0;
    font: 2.5rem/1.5em "Noto Sans JP", sans-serif;
    font-weight: 700; }
    .mv_box p span {
      font: 1.68rem/1.5em "Noto Sans JP", sans-serif;
      font-weight: 500;
      display: block;
      margin: 5px 0 0 0; }

@media (min-width: 1980px) {
  .mv_box {
    margin: 0 auto 105px;
    max-width: 1530px;
    width: calc(100% - 80px);
    position: relative; }
    .mv_box h1 {
      font: 8rem/1.5em "Noto Sans JP", sans-serif;
      font-weight: 700;
      margin-bottom: 25px; }
      .mv_box h1 span {
        color: #5A4398; }
    .mv_box p {
      width: fit-content;
      border-top: 1px solid #ccc;
      padding: 25px 0 0 0;
      font: 2.4rem/1.5em "Noto Sans JP", sans-serif;
      font-weight: 700; }
      .mv_box p span {
        font: 1.7rem/1.5em "Noto Sans JP", sans-serif;
        font-weight: 500;
        display: block;
        margin: 5px 0 0 0; }

  .mv_all {
    /*>p{
      max-width: 1730px;
      width: calc(100% - 80px);
      margin: 0 auto;
      font: 8.1rem/1.0em $in;
      font-weight: 700;
      color: #DEDBE7;
      position: relative;
    }*/ } }
/*min-width:1920px*/
/*max-width:1280px*/
@media (max-width: 1024px) {
  .mv_all {
    --bg-x: 0px;
    --bg-y: 0px;
    padding: clamp(120px, 10vw, 250px) 0 0;
    max-width: 1920px;
    /*>p{
      width: calc(100% - 80px);
      line-height: 1.5;
      margin: 0 auto;
    }*/ }

  .mv_flex {
    position: relative;
    z-index: 1;
    top: auto;
    right: auto;
    width: clamp(400px, 50vw, 480px);
    max-width: 480px;
    margin: 0 60px 0 auto;
    transition: .3s; }
    .mv_flex .swiper {
      aspect-ratio: 1 / 1;
      width: 100%;
      height: auto;
      overflow: hidden;
      border-radius: 50%; }
      .mv_flex .swiper.sliderA {
        width: 39%;
        max-width: 250px;
        margin: 0 0 0 auto; }
      .mv_flex .swiper.sliderB {
        width: 72%;
        max-width: 450px; }
      .mv_flex .swiper.sliderC {
        width: 39%;
        max-width: 250px; }

  .mv_box {
    margin: -13vw auto 60px;
    max-width: 1530px;
    width: calc(100% - 120px);
    position: relative;
    position: relative; }
    .mv_box h1 {
      font-size: clamp(3.2rem, 8vw, 8rem);
      line-height: 1.5; } }
/*max-width:1024px*/
@media (max-width: 768px) {
  .mv_all {
    padding: 80px 0 0; }
    .mv_all .mv_txt {
      width: calc(100% - 40px); }

  .mv_flex {
    width: clamp(400px, 50vw, 480px);
    max-width: 480px;
    margin: -50px 30px 0 auto;
    transition: .3s; }
    .mv_flex .swiper.sliderA {
      width: 39%;
      max-width: 200px;
      margin: 0 0 0 auto; }
    .mv_flex .swiper.sliderB {
      width: 72%;
      max-width: 400px;
      margin: -9vw 0 0; }
    .mv_flex .swiper.sliderC {
      width: 39%;
      max-width: 200px;
      margin: -9vw 0 0 auto; }

  .mv_box {
    margin: -12vw auto 54px;
    width: calc(100% - 70px);
    max-width: 768px; }
    .mv_box h1 {
      font-size: clamp(3.2rem, 9.5vw, 8rem);
      line-height: 1.5; }
    .mv_box p {
      padding: 25px 0 0 0;
      font: clamp(1.6rem, 4.3vw, 2.4rem)/1.5 "Noto Sans JP", sans-serif;
      font-weight: 700; }
      .mv_box p span {
        font: clamp(1rem, 2.5vw, 1.7rem)/1.5 "Noto Sans JP", sans-serif;
        font-weight: 500; } }
/*max-width:768px*/
@media (max-width: 480px) {
  .mv_all {
    padding: 80px 0 0;
    /* >p{
       width: calc(100% - 40px);
     font-size:clamp(2.8rem,5.5vw, 7rem);
       line-height: 1.5;
       margin: 0 auto;
     }*/ }
    .mv_all .mv_txt {
      display: none; }

  .mv_box {
    margin: 0 auto 30px;
    width: calc(100% - 30px);
    max-width: 325px; }
    .mv_box h1 {
      margin-top: -60px;
      font-size: clamp(3.2rem, 9.5vw, 8rem);
      line-height: 1.5; }
    .mv_box p {
      padding: 25px 0 0 0;
      font: clamp(1.6rem, 4vw, 2.4rem)/1.5 "Noto Sans JP", sans-serif;
      font-weight: 700; }
      .mv_box p span {
        font: clamp(1rem, 2.5vw, 1.7rem)/1.5 "Noto Sans JP", sans-serif;
        font-weight: 500; }

  .mv_flex {
    width: 100%;
    padding: 0 0 0 25px;
    max-width: 350px;
    margin: -40px 30px 0 auto;
    transition: .3s; }
    .mv_flex .swiper.sliderA {
      max-width: 125px; }
    .mv_flex .swiper.sliderB {
      max-width: 250px; }
    .mv_flex .swiper.sliderC {
      max-width: 125px; } }
/*max-width:480px*/
/************************************/
.message_all {
  position: relative;
  max-width: 1920px;
  margin: 0 auto;
  padding: 90px 0 400px; }
  .message_all .message_imgleft {
    position: absolute;
    top: 0;
    left: -125px;
    width: clamp(400px, 55vw, 1013px); }

.message_box {
  position: relative;
  z-index: 5;
  padding-left: 32vw;
  margin: 0 auto;
  max-width: 1530px;
  width: calc(100% - 80px); }
  .message_box h1 {
    color: #fff;
    font: 4.8rem/1em "Noto Sans JP", sans-serif;
    font-weight: 700;
    letter-spacing: 0.1em;
    margin: 0 0 50px; }
    .message_box h1 br {
      display: block;
      content: "";
      margin-bottom: 15px; }
    .message_box h1 span {
      font-feature-settings: "palt";
      display: inline;
      padding: 0 10px 5px 15px;
      margin: 0;
      background-image: linear-gradient(#5A4398, #5A4398);
      background-repeat: no-repeat;
      background-position: 0 0;
      background-size: 0% 100%;
      -webkit-box-decoration-break: clone;
      box-decoration-break: clone;
      transition: background-size 0.8s ease; }
      .message_box h1 span.block {
        display: block;
        height: 35px;
        padding: 0;
        background-image: none; }
    .message_box h1 span:nth-of-type(2) {
      transition-delay: 0.8s; }
    .message_box h1.is-active span {
      background-size: 100% 100%; }
  .message_box p {
    max-width: 911px;
    font: 1.8rem/2.4em "Noto Sans JP", sans-serif;
    font-weight: 700;
    letter-spacing: 0.04em;
    margin: 0 0 40px;
    position: relative;
    z-index: 5; }
    .message_box p.line {
      text-decoration-line: underline;
      text-decoration-color: #707070;
      text-decoration-thickness: 1px;
      text-underline-offset: 10px;
      position: relative;
      z-index: 5; }
      .message_box p.line:before {
        border-radius: 50%;
        z-index: -1;
        position: absolute;
        content: "";
        display: block;
        background: url("../images/global/message_img02.jpg") center center no-repeat;
        background-size: contain;
        width: 300px;
        height: 300px;
        right: -20px;
        bottom: -365px; }

html.translated-ltr .message_box h1 {
  line-height: 1.5em; }

@media (max-width: 1280px) {
  .message_box h1 {
    color: #fff;
    font: 3.6vw/1em "Noto Sans JP", sans-serif;
    font-weight: 700; }
  .message_box p {
    font: 1.8rem/2.2em "Noto Sans JP", sans-serif;
    font-weight: 700; }
    .message_box p.line:before {
      bottom: -330px; } }
/*max-width:1280px*/
@media (max-width: 1024px) {
  .message_all {
    position: relative;
    max-width: 1920px;
    margin: 0 auto;
    padding: 90px 0 400px; }
    .message_all .message_imgleft {
      position: relative;
      top: 0;
      left: auto;
      margin: 0 auto;
      width: 100%;
      max-width: 768px;
      margin-bottom: 50px; }

  .message_box {
    padding-left: 0;
    margin: 0 auto;
    max-width: 768px; }
    .message_box h1 {
      font: 4.6vw/1em "Noto Sans JP", sans-serif;
      font-weight: 700; } }
/*max-width:1024px*/
@media (max-width: 768px) {
  .message_all {
    padding: 90px 0 300px; }
    .message_all .message_imgleft {
      position: relative;
      left: -5%;
      margin: 0 0 50px;
      width: calc(100% - 60px);
      max-width: 768px; }

  .message_box {
    max-width: 562px;
    width: calc(100% - 60px); }
    .message_box h1 {
      font: 3.4rem/1.7em "Noto Sans JP", sans-serif;
      font-weight: 700; }
      .message_box h1 span.block {
        display: block;
        height: 10px;
        padding: 0;
        background-image: none; }
    .message_box p.line:before {
      width: 250px;
      height: 250px;
      right: -20px;
      bottom: -280px; } }
/*max-width:768px*/
@media (max-width: 480px) {
  .message_all {
    padding: 0; }
    .message_all .message_imgleft {
      position: relative;
      left: -3%;
      width: 100%;
      margin: 0 0 30px;
      max-width: 480px; }

  .message_box {
    max-width: 340px;
    width: calc(100% - 40px); }
    .message_box h1 {
      font: 2.5rem/1.5em "Noto Sans JP", sans-serif;
      font-weight: 700;
      margin-bottom: 25px; }
      .message_box h1 span.block {
        display: block;
        height: 10px;
        padding: 0;
        background-image: none; }
    .message_box p {
      line-height: 2em; }
      .message_box p.line {
        margin-bottom: 60px; }
        .message_box p.line:before {
          width: 165px;
          height: 165px;
          right: -5px;
          bottom: -155px; } }
/*max-width:480px*/
/************************************/
.pickup {
  padding: 168px 0 0; }
  .pickup h2 {
    letter-spacing: 0.02em;
    font: 1.8rem/1em "Inter Tight", sans-serif;
    font-weight: 500;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    color: #000000; }
    .pickup h2 span {
      color: #C9C5CF;
      font: 3.6rem/1em "Inter Tight", sans-serif;
      font-weight: 500;
      padding: 0 0 0 15px; }

.pickup_content_deep {
  background-color: #554189;
  width: 100%;
  padding: 40px 0 60px;
  position: relative; }
  .pickup_content_deep:before {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 168px;
    left: 0;
    top: -168px;
    background: url("../images/global/picup_top.png") center top no-repeat;
    background-size: 1920px 168px; }
  .pickup_content_deep:after {
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 168px;
    left: 0;
    bottom: -168px;
    background: url("../images/global/picup_btm.png") center top no-repeat;
    background-size: 1920px 168px; }

@media (max-width: 1024px) {
  .pickup {
    padding: 120px 0 0; }

  .pickup_content_deep {
    padding: 40px 0 40px;
    position: relative; }
    .pickup_content_deep:before {
      height: 89px;
      top: -89px;
      background: url("../images/global/picup_top.png") center top no-repeat;
      background-size: 1024px; }
    .pickup_content_deep:after {
      height: 89px;
      bottom: -89px;
      background: url("../images/global/picup_btm.png") center top no-repeat;
      background-size: 1024px; } }
/*max-width:1024px*/
@media (max-width: 480px) {
  .pickup {
    padding: 80px 0 0; }

  .pickup_content_deep {
    padding: 40px 0 40px;
    position: relative; }
    .pickup_content_deep:before {
      height: 42px;
      top: -42px;
      background: url("../images/global/picup_top.png") center top no-repeat;
      background-size: 480px; }
    .pickup_content_deep:after {
      height: 42px;
      bottom: -42px;
      background: url("../images/global/picup_btm.png") center top no-repeat;
      background-size: 480px; } }
/*max-width:480px*/
.pickup01 {
  color: #fff;
  max-width: 1280px;
  width: calc(100% - 80px);
  margin: 0 auto;
  text-align: center; }
  .pickup01 h2 {
    color: #fff;
    margin: 0 0 35px; }
    .pickup01 h2 span {
      color: #D2C0DD; }
  .pickup01 .top {
    font: 4rem/1em "Noto Sans JP", sans-serif;
    font-weight: 700;
    margin: 0 0 50px;
    text-decoration-line: underline;
    text-decoration-color: #FFFFFF;
    text-decoration-thickness: 1px;
    text-underline-offset: 20px; }
  .pickup01 .big {
    font: 6rem/1em "Noto Sans JP", sans-serif;
    font-weight: 700;
    margin: 0 0 40px; }
  .pickup01 p {
    font: 2rem/2.4em "Noto Sans JP", sans-serif;
    font-weight: 500;
    letter-spacing: 0.02em;
    margin: 0 0 100px; }
  .pickup01 .flex {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin: 0 auto 40px; }
    .pickup01 .flex a {
      margin: 0 40px 50px 0;
      width: calc((100% - 80px)/3);
      aspect-ratio: 40/34;
      border-radius: 10px 10px 10px 0;
      max-width: 400px;
      overflow: hidden;
      position: relative;
      height: auto; }
      .pickup01 .flex a:nth-of-type(3n) {
        margin-right: 0; }
      .pickup01 .flex a img {
        border-radius: 10px;
        object-fit: cover;
        width: 100%;
        height: 100%;
        transition: .3s; }
      .pickup01 .flex a p {
        color: #fff;
        text-align: left;
        font: 1.6rem/1.6em "Noto Sans JP", sans-serif;
        font-weight: 400;
        position: absolute;
        left: 0;
        bottom: 0;
        z-index: 1;
        background: url("../images/global/pickup_name.png") left bottom no-repeat;
        width: 270px;
        min-height: 80px;
        background-size: 100% 100%;
        padding: 22px 15px 5px 15px;
        margin: 0; }
  .pickup01 > a {
    display: block;
    margin: 0 auto;
    font: 2.6rem/65px "Noto Sans JP", sans-serif;
    font-weight: 700;
    letter-spacing: 0.04em;
    padding: 0 92px 0 0; }
    .pickup01 > a:before {
      width: 68px;
      height: 68px; }
    .pickup01 > a:after {
      width: 12px;
      height: 12px;
      top: 28px;
      right: 28px; }

@media (hover: hover) {
  .pickup01 .flex a:hover img {
    transform: scale(1.1);
    transform-origin: center center; }
  .pickup01 .flex a:hover p {
    color: #FFE100; }
  .pickup01 > a:hover::after {
    animation: dotFlash 0.6s ease-out forwards; } }
@media (min-width: 1920px) {
  .pickup_content_deep:before {
    background: url("../images/global/picup_top.png") center top no-repeat;
    background-size: 100% 168px; }
  .pickup_content_deep:after {
    background: url("../images/global/picup_btm.png") center top no-repeat;
    background-size: 100% 168px; } }
/*min-width:1920px*/
@media (max-width: 1280px) {
  .pickup01 .flex a {
    margin: 0 30px 50px 0;
    width: calc((100% - 60px)/3); }
    .pickup01 .flex a p {
      font: 1.5rem/1.6em "Noto Sans JP", sans-serif;
      font-weight: 400;
      width: 260px;
      min-height: 80px; } }
/*max-width:1280px*/
@media (max-width: 1024px) {
  .pickup01 .flex {
    max-width: 768px;
    justify-content: space-between; }
    .pickup01 .flex a {
      margin: 0 0 50px;
      width: calc((100% - 30px)/2); }
      .pickup01 .flex a:nth-of-type(3n) {
        margin-right: 0; }
  .pickup01 .top {
    margin: 0 auto 50px; }
  .pickup01 .big {
    margin: 0 auto 40px; }
  .pickup01 p {
    max-width: 768px;
    margin: 0 auto 100px; } }
/*max-width:1024px*/
@media (max-width: 768px) {
  .pickup01 {
    width: calc(100% - 60px); }
    .pickup01 .top {
      font: 2.8rem/1em "Noto Sans JP", sans-serif;
      font-weight: 700;
      text-align: center; }
    .pickup01 .big {
      text-align: center;
      font: 3.2rem/1em "Noto Sans JP", sans-serif;
      font-weight: 700;
      margin-bottom: 40px; }
    .pickup01 p {
      text-align: left;
      font: 1.8rem/2.4em "Noto Sans JP", sans-serif;
      font-weight: 500;
      max-width: 676px;
      margin: 0 auto 45px; }

  .pickup01 .flex {
    justify-content: space-between; }
    .pickup01 .flex a {
      width: calc((100% - 15px)/2);
      max-width: 340px; }
      .pickup01 .flex a p {
        width: 95%;
        font: clamp(1.2rem, 2vw, 1.4rem)/1.4 "Inter Tight", sans-serif;
        font-weight: 400; } }
/*max-width:768px*/
@media (max-width: 480px) {
  .pickup01 .flex {
    justify-content: space-between; }
    .pickup01 .flex a {
      margin: 0 auto 30px;
      width: 100%;
      max-width: 480px; }
      .pickup01 .flex a:nth-of-type(3n) {
        margin-right: auto; } }
/*max-width:480px*/
/****************************************/
.pickup_content_light {
  background-color: #E6E1EC;
  padding: 255px 0 220px;
  border-radius: 0 0 100px 100px; }

.pickup02,
.pickup03 {
  background-color: #FFFFFF;
  max-width: 1600px;
  border-radius: 30px;
  width: calc(100% - 80px);
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  padding: 110px 35px 70px 80px;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.2); }
  .pickup02 h2,
  .pickup03 h2 {
    text-align: left;
    margin: 0 0 15px;
    justify-content: flex-start; }
  .pickup02 img,
  .pickup03 img {
    width: 33%;
    max-width: 440px;
    border-radius: 100%; }
  .pickup02 .txt,
  .pickup03 .txt {
    width: 52%;
    padding: 0;
    max-width: 810px; }
    .pickup02 .txt div,
    .pickup03 .txt div {
      max-width: 675px; }
  .pickup02 .right,
  .pickup03 .right {
    padding: 13% 0 0;
    max-width: 170px;
    width: 8%;
    color: #49268E;
    font: 1.9rem/1em "Inter Tight", sans-serif;
    font-weight: 400;
    letter-spacing: 0.08em;
    writing-mode: vertical-rl;
    position: relative;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center; }
    .pickup02 .right:before,
    .pickup03 .right:before {
      position: absolute;
      content: ""; }
  .pickup02 .big,
  .pickup03 .big {
    font: clamp(3rem, 3vw, 5.4rem)/1.5em "Noto Sans JP", sans-serif;
    font-weight: 700;
    color: #5A4398;
    margin: 0 0 22px; }
  .pickup02 p,
  .pickup03 p {
    text-align: justify;
    text-justify: inter-ideograph;
    font: 1.8rem/2em "Noto Sans JP", sans-serif;
    font-weight: 500;
    letter-spacing: 0.01em;
    margin: 0 0 45px; }
  .pickup02 .view,
  .pickup03 .view {
    margin: 0 0 0 auto;
    color: #5A4398;
    font: 2.6rem/65px "Noto Sans JP", sans-serif;
    font-weight: 700;
    letter-spacing: 0.04em;
    padding: 0 92px 0 0; }
    .pickup02 .view:before,
    .pickup03 .view:before {
      border-color: #5A4398;
      width: 68px;
      height: 68px; }
    .pickup02 .view:after,
    .pickup03 .view:after {
      background-color: #5A4398;
      width: 12px;
      height: 12px;
      top: 28px;
      right: 28px; }

.pickup02 {
  margin-bottom: 30px; }
  .pickup02 .right:before {
    background: url("../images/global/pickup01.svg") top center no-repeat;
    background-size: contain;
    aspect-ratio: 1/1;
    width: 100%;
    max-width: 180px;
    height: auto;
    top: 0;
    left: 50%;
    transform: translate(-50%, 0%); }

.pickup03 {
  margin-bottom: 30px; }
  .pickup03 .right:before {
    background: url("../images/global/pickup02.svg") top center no-repeat;
    background-size: contain;
    aspect-ratio: 161/251;
    width: 100%;
    max-width: 161px;
    height: auto;
    top: -40px;
    left: 50%;
    transform: translate(-50%, 0%); }

html.translated-ltr .pickup02 p,
html.translated-ltr .pickup03 p {
  text-align: left; }

@media (hover: hover) {
  .pickup02 .view:hover::after,
  .pickup03 .view:hover::after {
    animation: dotFlash02 0.6s ease-out forwards; } }
@media (max-width: 1280px) {
  .pickup02,
  .pickup03 {
    padding: 110px 40px 70px 60px;
    ustify-content: flex-start; }
    .pickup02 img,
    .pickup03 img {
      width: 35%; }
    .pickup02 .txt,
    .pickup03 .txt {
      width: 58%; }
    .pickup02 .right,
    .pickup03 .right {
      display: none; }
    .pickup02 .big,
    .pickup03 .big {
      font: clamp(3rem, 3.3vw, 5.6rem)/1.5em "Noto Sans JP", sans-serif;
      font-weight: 700; } }
/*max-width:1280px*/
@media (max-width: 1024px) {
  .pickup_content_light {
    padding: 180px 0 120px; }

  .pickup02,
  .pickup03 {
    max-width: 768px;
    display: block;
    padding: 60px 40px 80px; }
    .pickup02 img,
    .pickup03 img {
      width: 100%;
      max-width: 380px;
      margin: 0 auto 40px; }
    .pickup02 .txt,
    .pickup03 .txt {
      width: 100%;
      padding: 0;
      margin: 0 auto;
      max-width: 580px; }
    .pickup02 .big,
    .pickup03 .big {
      font: clamp(3rem, 4vw, 5.6rem)/1.5em "Noto Sans JP", sans-serif;
      font-weight: 700; } }
/*max-width:1024px*/
@media (max-width: 768px) {
  .pickup_content_light {
    padding: 255px 0 80px;
    border-radius: 0 0 30px 30px; }

  .pickup02,
  .pickup03 {
    max-width: 660px;
    display: block;
    padding: 60px 40px 80px;
    width: calc(100% - 60px); }
    .pickup02 img,
    .pickup03 img {
      width: 100%;
      max-width: 320px;
      margin: 0 auto 40px; }
    .pickup02 .big,
    .pickup03 .big {
      font: 3rem/1.6em "Noto Sans JP", sans-serif;
      font-weight: 700; }
    .pickup02 p,
    .pickup03 p {
      margin-bottom: 50px; } }
/*max-width:768px*/
@media (max-width: 480px) {
  .pickup_content_light {
    padding: 130px 0 80px;
    border-radius: 0 0 30px 30px; }

  .pickup02,
  .pickup03 {
    max-width: 480px;
    display: block;
    padding: 60px 30px 60px;
    width: calc(100% - 30px); }
    .pickup02 img,
    .pickup03 img {
      max-width: 260px;
      margin: 0 auto 30px; }
    .pickup02 .big,
    .pickup03 .big {
      font: 2.5rem/1.6em "Noto Sans JP", sans-serif;
      font-weight: 700;
      margin-bottom: 15px; } }
/*max-width:480px*/
