﻿  
  .main-area {
    font-family: var(--yugothic);
    font-weight: normal;
    overflow: hidden;
    box-sizing: border-box;
  }

  .main-area img {
    width: 100%;
    height: auto;
  }

  .sp_only {
    display: block;
  }

  .pc_only {
    display: none;
  }

  .position_box {
    position: relative;
  }

  .flex_box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .flex_box_gap {
    justify-content: flex-start;
    gap: 0 calc(20* (100vw /375));
  }

  .pointer_none {
    pointer-events: none;
    display: block;
  }

  .position_box {
    position: relative;
  }


/************** js **************/

/************** slick（矢印がある場合） **************/
.main-area .slider_arrow picture {
  position: relative;
}

.main-area .slider_arrow .prev-arrow {
  width: calc(15* (100vw/375));
  height: calc(29* (100vw/375));
  top: 36.8%;
  left: -9.6%;
  position: absolute;
  content: "";
  display: block;
  z-index: 9999;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url(../img/svg/prev.svg);
}

.main-area .slider_arrow .next-arrow {
  width: calc(15* (100vw/375));
  height: calc(29* (100vw/375));
  top: 36.8%;
  right: -9.6%;
  position: absolute;
  content: "";
  display: block;
  z-index: 9999;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url(../img/svg/next.svg);
}

.main-area .slick-dots li{
	margin: 0;
}

.main-area .slick-dots {
  bottom: -42px;
}

.main-area .slick-dots li button:before{
	font-size: 12px!important;
}


/************** common **************/
  .sec h3 {
    margin: 0 auto calc(22* (100vw /375));
    width: max-content;
    font-family: "poppins", sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size: calc(24* (100vw /375));
    letter-spacing: 0.1em;
    line-height: 1;
  }

  .sec_text {
    margin: 0 auto;
    width: calc(345* (100vw /375));
    font-size: calc(14* (100vw /375));
    letter-spacing: 0.025em;
    line-height: 2;
    font-weight: 500;
  }

  .sec_tax li a {
    font-size: calc(14* (100vw /375));
    letter-spacing: 0.025em;
    line-height: 2;
    font-weight: 500;
    text-decoration: underline;
    text-decoration-skip-ink: none;
    text-align: center;
    display: flex;
    white-space: nowrap;
    justify-content: center;
  }

  /*** sec_box01 ***/
  .sec_box01 {
    margin: 0 auto calc(34* (100vw /375));
    width: calc(375* (100vw /375));
  }

  .ttl_number {
    position: absolute;
  }

  .sec_box01 .sub_box {
    margin-bottom: calc(32* (100vw /375));
  }

  .img01 {
    margin-bottom: calc(30* (100vw /375));
    width: calc(345* (100vw /375));
  }

  .img02 {
    width: calc(280* (100vw /375));
  }

  /*** sec_box02 ***/
  .sec_box02 {
    margin: 0 auto calc(40* (100vw /375));
    width: calc(315* (100vw /375));
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: calc(13* (100vw /375)) 0;
  }

  .sec_box02 .sec_text {
    width: max-content;
  }

  /*** sec_box03 ***/
  .sec_box03 {
    margin: 0 auto calc(48* (100vw /375));
    width: calc(375* (100vw /375));
  }

  .sec_box03 .sub_box01 {
    margin: 0 auto;
    width: calc(345* (100vw /375));
  }

  .sec_box03 .sub_box01 .item_img {
    width: calc(110* (100vw /375));
  }

  .sec_box03 .sub_box02 {
    margin: 0 auto;
    width: calc(285* (100vw /375));
  }

  .sec_box03 .sub_box02 .item_img {
    width: calc(132* (100vw /375));
  }

  /*** sec_box04 ***/
  .sec_box04 {
    margin: 0 auto calc(40* (100vw /375));
    width: calc(290* (100vw /375));
  }

  .sec_box04 .sub_box .slider_img {
    margin-bottom: calc(20* (100vw /375));
  }

  .sec_box04 .slider_text p:nth-child(1) {
    font-size: calc(18* (100vw /375));
    letter-spacing:  0.1em;
    font-family: "poppins", sans-serif;
    font-weight: 500;
    font-style: normal;
  }

  .sec_box04 .slider_text p:nth-child(2) {
    margin-top: calc(-6* (100vw /375));
    font-size: calc(14* (100vw /375));
    letter-spacing: 0.025em;
    font-weight: 500;
    line-height: 1.75;
  }

  .sec_box04 .sec_tax {
    margin-top: calc(74* (100vw /375));
  }

  .sec_box04 .sec_tax li a {
    margin-left: .2em;
  }


/************** mv **************/
  .mv {
    margin: 0 auto calc(94* (100vw /375));
    width: 100%;
  }

  .mv_img {
    margin-bottom: calc(52* (100vw /375));
  }

  .mv p {
    font-size: calc(14* (100vw /375));
    letter-spacing: 0.025em;
    line-height: 2;
    text-align: center;
    font-weight: 500;
  }


/************** sec01 **************/
  .sec01 {
    margin: 0 auto calc(114* (100vw /375));
    width: 100%;
  }

  /*** sec_box01 ***/
  .sec01 .ttl_number {
    width: calc(58* (100vw /375));
    top: -1.8%;
    left: 8%;
  }

  .sec01 .img02 {
    margin-left: auto;
    margin-right: 0;
  }

/************** sec02 **************/
  .sec02 {
    margin: 0 auto calc(113* (100vw /375));
    width: 100%;
  }

  /*** sec_box01 ***/
  .sec02 .ttl_number {
    width: calc(74* (100vw /375));
    top: -1.8%;
    left: auto;
    right: 8%;
  }

  .sec02 .img01 {
    margin-left: auto;
    margin-right: 0;
  }

/************** sec03 **************/
  .sec03 {
    margin: 0 auto calc(114* (100vw /375));
    width: 100%;
  }

  /*** sec_box01 ***/
  .sec03 .ttl_number {
    width: calc(74* (100vw /375));
    top: -1.8%;
    left: 8%;
  }

  .sec03 .img02 {
    margin-left: auto;
    margin-right: 0;
  }

/************** sec04 **************/
  .sec04 {
    margin: 0 auto calc(113* (100vw /375));
    width: 100%;
  }

  /*** sec_box01 ***/
  .sec04 .ttl_number {
    width: calc(74* (100vw /375));
    top: -3%;
    left: auto;
    right: 8%;
  }

  .sec04 .img01 {
    margin-left: auto;
    margin-right: auto;
  }

/************** sec05 **************/
  .sec05 {
    margin: 0 auto ;
    width: 100%;
  }

  .sec05 .slider_arrow .prev-arrow {
    top: 39.5%;
  }
  
  .sec05 .slider_arrow .next-arrow {
    top: 39.5%;
  }

  .sec05 .slick-dots {
    bottom: -45px;
  }

  /*** sec_box01 ***/
  .sec05 .sec_box01 {
    margin-bottom: calc(40* (100vw /375));
  }

  .sec05 .ttl_number {
    width: calc(74* (100vw /375));
    top: -1.7%;
    left: auto;
    right: 8%;
  }

  .sec05 .img01 {
    margin-left: auto;
    margin-right: 0;
  }

  /*** sec_box03 ***/
  .sec05 .sec_box03 {
    margin-bottom: calc(51* (100vw /375));
  }
  
  .sec05 .sec_box03 h3 {
    margin-bottom: calc(37* (100vw /750));
  }

  .sec05 .sec_box03 .sub_box02 {
    width: calc(241* (100vw /375));
  }

  .sec05 .sec_box03 .sub_box02 .item_img {
    width: calc(110* (100vw /375));
  }
  
  /*** sec_box04 ***/
  .sec05 .sec_box04 .sec_tax {
    margin-top: calc(78* (100vw /375));
  }


/************** btn **************/
  .sec_btn {
    padding: calc(14* (100vw /375)) 0 calc(95* (100vw /375));
    position: relative;
  }

  .sec_btn a {
    margin: 0 auto;
    width: calc(300* (100vw /375));
    height: calc(50* (100vw /375));
    font-size: calc(14* (100vw /375));
    max-width: 100%;
    max-height: 100%;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1;
    background-color: #000;
    color: #fff;
  }



/* ===============================================
### PC用デザイン###
=============================================== */
@media screen and (min-width:768px) {
  .sp_only {
    display: none;
  }

  .pc_only {
    display: block;
  }

  .flex_box_pc {
    display: flex;
    justify-content: space-between;
  }

  .grid_box_pc {
    display: grid;
  }

  .flex_box_gap {
    gap: 0 2.5rem;
  }

/************** js **************/

/************** slick（矢印がある場合） **************/
.main-area .slider_arrow picture {
  position: relative;
}

.main-area .slider_arrow .prev-arrow {
  width: 1.5rem;
  height: 2.89rem;
  top: 40%;
  left: -12.4%;
}

.main-area .slider_arrow .next-arrow {
  width: 1.5rem;
  height: 2.9rem;
  top: 40%;
  right: -12.4%;
}

.main-area .slick-dots li{
	margin: 0;
}

.main-area .slick-dots {
  bottom: -40px;
}

.main-area .slick-dots li button:before{
	font-size: 12px!important;
}


/************** common **************/
  .sec h3 {
    margin: 0 auto 2.3rem;
    font-size: 3rem;
    letter-spacing: 0.1em;
    line-height: 1;
  }

  .sec_text {
    margin: 0 auto;
    width: 100%;
    font-size: 1.6rem;
    letter-spacing: 0.025em;
    line-height: 2;
    font-weight: 500;
    text-align: center;
  }

  .sec_tax li a {
    font-size: 1.6rem;
    letter-spacing: 0.025em;
    line-height: 2;
    font-weight: 500;
  }

  /*** sec_box01 ***/
  .sec_box01 {
    margin: 0 auto 4.2rem;
    width: 92rem;
  }

  .sec_box01 .sub_box {
    margin-bottom: 4.2rem;
  }

  .img01 {
    margin-bottom: 0;
    width: 52rem;
  }

  .img02 {
    width: 43rem;
  }

  /*** sec_box02 ***/
  .sec_box02 {
    margin: 0 auto 8.2rem;
    width: 43rem;
    gap: 2.2rem 0;
  }

  /*** sec_box03 ***/
  .sec_box03 {
    margin: 0 auto 9rem;
    width: 70rem;
  }

  .sec_box03 .sub_box01 {
    margin: 0 auto;
    width: 70rem;
  }

  .sec_box03 .sub_box01 .item_img {
    width: 20rem;
  }

  .sec_box03 .sub_box02 {
    margin: 0 auto;
    width: 53rem;
  }

  .sec_box03 .sub_box02 .item_img {
    width: 24rem;
  }

  /*** sec_box04 ***/
  .sec_box04 {
    margin: 0 auto 4.0rem;
    width: 92em;
  }

  .sec_box04 .sub_box {
    margin: 0 auto;
    width: 44rem;
  }

  .sec_box04 .sub_box .slider_img {
    margin: 0 auto 2.5rem;
    width: 44rem;
  }

  .sec_box04 .slider_text p:nth-child(1) {
    font-size: 2.4rem;
    letter-spacing:  0.1em;
  }

  .sec_box04 .slider_text p:nth-child(2) {
    margin-top: -.6rem;
    font-size: 1.6rem;
    letter-spacing: 0.025em;
    font-weight: 500;
    line-height: 1.75;
  }

  .sec_box04 .sec_tax {
    margin-top: 7.6rem;
  }

  .sec_box04 .sec_tax li a {
    margin-left: .2em;
  }


/************** mv **************/
  .mv {
    margin: 0 auto 13.9rem;
    padding: 0 2rem;
    width: min(100%, 124rem);
  }

  .mv_img {
    margin-bottom: 7.2rem;
  }

  .mv p {
    font-size: 1.6rem;
  }


/************** sec01 **************/
  .sec01 {
    margin: 0 auto 19.9rem;
    width: 100%;
  }

  /*** sec_box01 ***/
  .sec01 .sec_box01 .sub_box {
    grid-template-columns: 49rem auto;
    grid-template-rows: 30rem auto;
  }

  .sec01 .img01 {
    margin: 0;
    grid-column: 1/3;
    grid-row: 1/3;
  }

  .sec01 .img02 {
    margin: 0;
    grid-column: 2/3;
    grid-row: 2/3;
  }

  .sec01 .ttl_number {
    width: 7.4rem;
    top: -2%;
    left: 4.6%;
  }


/************** sec02 **************/
  .sec02 {
    margin: 0 auto 19.9rem;
    width: 100%;
  }

  /*** sec_box01 ***/
  .sec02 .sec_box01 .sub_box {
    grid-template-columns: 40rem auto;
    grid-template-rows: 30rem auto;
  }

  .sec02 .img01 {
    margin: 0;
    grid-column: 2/3;
    grid-row: 1/3;
  }

  .sec02 .img02 {
    margin: 0;
    grid-column: 1/3;
    grid-row: 2/3;
  }

  .sec02 .ttl_number {
    width: 8.8rem;
    top: -2%;
    left: auto;
    right: 4.9%;
  }

  .sec02 .img01 {
    margin: 0;
  }

/************** sec03 **************/
  .sec03 {
    margin: 0 auto 19.9rem;
    width: 100%;
  }

  .sec03 .slider_arrow .prev-arrow {
    top: 42%;
    left: -12.4%;
  }
  
  .sec03 .slider_arrow .next-arrow {
    top: 42%;
    right: -12.4%;
  }
  
  /*** sec_box01 ***/
  .sec03 .sec_box01 .sub_box {
    grid-template-columns: 49rem auto;
    grid-template-rows: 30rem auto;
  }

  .sec03 .img01 {
    margin: 0;
    grid-column: 1/3;
    grid-row: 1/3;
  }

  .sec03 .img02 {
    margin: 0;
    grid-column: 2/3;
    grid-row: 2/3;
  }

  .sec03 .ttl_number {
    width: 8.8rem;
    top: -2%;
    left: 4.8%;
  }

  .sec03 .img02 {
    margin: 0;
  }

  .sec03 .slick-dots {
    bottom: -47px;
  }

  .sec03 .sec_box04 .sec_tax {
    margin-top: 8.2rem;
  }

/************** sec04 **************/
  .sec04 {
    margin: 0 auto 19.9rem;
    width: 100%;
  }

  .sec04 .slider_arrow .prev-arrow {
    top: 42%;
    left: -12.4%;
  }
  
  .sec04 .slider_arrow .next-arrow {
    top: 42%;
    right: -12.4%;
  }

  /*** sec_box01 ***/
  .sec04 .ttl_number {
    width: 8.8rem;
    top: -2.3%;
    left: auto;
    right: 26.7%;
  }

  .sec04 .img01 {
    margin: 0 auto;
  }

  .sec04 .slick-dots {
    bottom: -47px;
  }

  .sec04 .sec_box04 .sec_tax {
    margin-top: 8.2rem;
  }

/************** sec05 **************/
  .sec05 {
    margin: 0 auto;
    width: 100%;
  }

  .sec05 .slider_arrow .prev-arrow {
    top: 42%;
    left: -12.4%;
  }
  
  .sec05 .slider_arrow .next-arrow {
    top: 42%;
    right: -12.4%;
  }

  /*** sec_box01 ***/
  .sec05 .sec_box01 .sub_box {
    grid-template-columns: 40rem auto;
    grid-template-rows: 30rem auto;
  }

  .sec05 .img01 {
    margin: 0;
    grid-column: 2/3;
    grid-row: 1/3;
  }

  .sec05 .img02 {
    margin: 0;
    grid-column: 1/3;
    grid-row: 2/3;
  }

  .sec05 .sec_box01 {
    margin-bottom: 8.3rem;
  }

  .sec05 .ttl_number {
    width: 8.8rem;
    top: -2%;
    left: auto;
    right: 4.8%;
  }

  .sec05 .img01 {
    margin: 0;
  }

  /*** sec_box03 ***/
  .sec05 .sec_box03 {
    margin-bottom: 9rem;
  }
  
  .sec05 .sec_box03 h3 {
    margin-bottom: 2.3rem;
  }

  .sec05 .sec_box03 .sub_box02 {
    width: 45rem;
  }

  .sec05 .sec_box03 .sub_box02 .item_img {
    width: 20rem;
  }
  
  /*** sec_box04 ***/
  .sec05 .sec_box04 .sec_tax {
    margin-top: 7.8rem;
  }

  .sec05 .slick-dots {
    bottom: -47px;
  }

  .sec05 .sec_box04 .sec_tax {
    margin-top: 8.2rem;
  }

/************** btn **************/
  .sec_btn {
    padding: 3.2rem 0 10.4rem;
    position: relative;
  }

  .sec_btn a {
    margin: 0 auto;
    width: 30rem;
    height: 5.0rem;
    font-size: 1.4rem;
  }



}

  /* パンくず 追加スタイル PC */
  @media only screen and (min-width: 768px) {
    .breadcrumb__list{
      padding-bottom: 1.6rem;
    }
  }
