﻿

.main-area {
  margin-bottom: calc(197* (100vw /750));
  font-family: var(--hirakaku);
	font-weight: normal;
	overflow: hidden;
	box-sizing: border-box;
}

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

.sp_only {
	display: block;
}

.pc_only {
	display: none;
}

/************** kominesan mv **************/
.mv_bg {
  background-image: url(../img/mv/sp_mv_bg.svg);
  width: 100vw;
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: cover;
  margin: 0 auto calc(70* (100vw /750));
}
.mv__inner {
  margin: 0 auto;
  --grid-column-count: 2;
  overflow: hidden;
  position: relative;
  display: grid;
  grid-template-columns: repeat(var(--grid-column-count), minmax(0, 1fr));
  grid-template-rows: 50vw 50vw 7.0666666667vw;
  grid-template-areas: "slider1 slider2" ". slider3" "catch catch";
  width: min(100%, 124rem);
}
.mv__inner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 200%;
  z-index: 3;
  display: block;
  width: 200%;
  height: min(100%, calc(750* (100vw /750)));
  background-color: #e8e8e8;
  animation: pageLoadAnimation 1s cubic-bezier(1, 0.4, 0.41, 1) 0.1s 1 forwards;
}
.mv__title {
  grid-area: 2/1/3/3;
  z-index: 2;
  margin-top: 7.8vw;
  margin-left: 4.2666666667vw;
}
.mv__heading {
  display: flex;
  flex-direction: column;
  font-family: "pragmatica", sans-serif;
}
.mv__heading .text-1 {
  font-size: calc(71* (100vw /750));
  letter-spacing: 0.08em;
  line-height: 1.05;
}
.mv__heading .text-2 {
  margin: calc(7* (100vw /750)) 0 calc(25* (100vw /750));
  font-size: calc(44* (100vw /750));
  letter-spacing: 0.08em;
}
.mv__heading .text-3 {
  font-size: calc(24* (100vw /750));
  letter-spacing: 0.16em;
}
.mv__bar-text {
  grid-area: catch;
  display: grid;
  place-items: center;
  font-size: 3.6vw;
  text-align: center;
  letter-spacing: 0.1em;
  color: #fff;
  background-color: #99b8ba;
}
@media only screen and (max-width: 767px) {
  .mv__bar-text--pc {
    display: none;
  }
}
@media only screen and (min-width: 768px) {

  .mv_bg {
    margin-bottom: 5.4rem;
    --bg-image-size: 150rem 45rem;
    background-image: url(../img/mv/pc_mv_bg.svg);
  }
  .mv__inner {
    --grid-column-count: 4;
    grid-template-rows: auto;
    grid-template-areas: "slider1 slider2 . slider3";
    padding: 0 2rem;
  }
  .mv__title {
    grid-area: 1/3/2/5;
    margin-top: 14.8rem;
    margin-left: 2.4rem;
  }
  .mv__inner::before {
    height: min(100%, 45rem);
  }
  .mv__heading .text-1 {
    font-size: 4.7rem;
    letter-spacing: 0.03em;
    line-height: 1.05;
  }
  .mv__heading .text-1 br {
    display: none;
  }
  .mv__heading .text-2 {
    margin: 0 0 1.1rem;
    font-size: 3rem;
    letter-spacing: 0.067em;
  }
  .mv__heading .text-3 {
    font-size: 1.5rem;
    letter-spacing: 0.16em;
  }
  .mv__bar-text {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 25rem;
    height: 2.2rem;
    margin-top: 2rem;
    letter-spacing: 0.01em;
    font-size: 1.3rem;
    font-family: "pragmatica", sans-serif;
  }

  .mv__bar-text p {
    line-height: 1;
  }
  
  .mv__bar-text--sp {
    display: none;
  }
}

.c-slider--1 {
  grid-area: slider1;
}
.c-slider--2 {
  grid-area: slider2;
}
.c-slider--3 {
  grid-area: slider3;
}
.c-slider__inner {
  transition: opacity 1.5s ease;
  opacity: 0;
}
.c-slider .slick-initialized {
  opacity: 1;
}
.c-slider__slide {
  opacity: 1 !important; /* その場でスライドを変えたいがフェードはさせたくない為 */
}
.c-slider .slick-current .c-slider__clip {
  -webkit-clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
          clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
  animation: slideClipAnimation 4s cubic-bezier(1, 0.4, 0.41, 1) 0.1s 1 forwards;
}
.c-slider__clip {
  height: var(--slide-height) !important;
}
@keyframes pageLoadAnimation {
  0% {
    left: 200%;
  }
  100% {
    left: -200%;
  }
}
@keyframes slideClipAnimation {
  0% {
    -webkit-clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
            clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
  }
  20% {
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
            clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
  }
  100% {
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
            clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
  }
}/*# sourceMappingURL=style.css.map */


/************** common **************/
  .sec {
    margin: 0 auto;
    width: calc(690* (100vw /750));
  }

/*** sec_ttl ***/
  .sec h3 {
    margin-bottom: calc(44* (100vw /750));
    display: flex;
    align-items: center;
  }

  .sec h3 p{
    font-family: 'Hanken Grotesk', sans-serif;
    font-weight: 600;
  }

  .sec_ttl_1 {
    font-size: calc(30* (100vw /750));
    letter-spacing: 0.1em;
  }

  .sec_ttl_2 {
    margin-left: calc(9* (100vw /750));
    font-size: calc(55* (100vw /750));
    letter-spacing: 0em;
  }

  .sec_ttl_3 {
    margin-left: calc(36* (100vw /750));
    font-size: calc(50* (100vw /750));
    letter-spacing: 0.1em;
  }

/*** sec_sub_ttl ***/
  .sec_sub_ttl {
    margin-bottom: calc(60* (100vw /750));
    padding-bottom: calc(28* (100vw /750));
    font-size: calc(40* (100vw /750));
    letter-spacing: 0.1em;
    line-height: 1.5;
    border-bottom: 1px solid #000;
  }

/*** sec_text ***/
  .sec_text {
    font-size: calc(26* (100vw /750));
    letter-spacing: 0.1em;
    line-height: 1.84;
    font-weight: 300;
  }

  .sec_text span {
    margin-top: calc(15* (100vw /750));
    font-size: calc(24* (100vw /750));
    display: inline-block;
    letter-spacing: 0.1em;
  }

/*** sec_number_text ***/
  .sec_number_text {
    margin: 0 0 calc(60* (100vw /750)) calc(5* (100vw /750));
    padding-bottom: calc(14* (100vw /750));
    display: flex;
    gap: 0 calc(22* (100vw /750));
    align-items: center;
    border-bottom: 1px solid #000;
  }

  .sec_number_text01 {
    font-size: calc(112* (100vw /750));
    font-family: 'Hanken Grotesk', sans-serif;
    font-weight: 300;
    letter-spacing: 0;
  }

  .sec_number_text02 {
    margin-bottom: calc(10* (100vw /750));
    font-size: calc(30* (100vw /750));
    letter-spacing: 0.12em;
    font-weight: 300;
  }

  .sec_number_text02_1 {
    margin-bottom: calc(14* (100vw /750));
  }

  .sec_number_text02_2 {
    font-size: calc(40* (100vw /750));
    font-weight: 400;
    letter-spacing: 0.12em;
  }

/*** sec_tax ***/
  .sec_tax {
    margin-left: calc(5* (100vw /750));
    font-size: calc(24* (100vw /750));
    font-weight: 300;
    letter-spacing: 0.1em;
  }

  .sec_tax li a {
    text-decoration: underline;
    position: relative;
    z-index: 10;
  }

/*** item_content ***/
  .item_content {
    display: flex;
    flex-wrap: wrap;
  }

  .item_content li {
    mix-blend-mode: darken;
  }

/************** mv **************/
  .sec_mv {
    margin: 0 auto calc(80* (100vw /750));
  }

  /*** mv_text ***/
  .mv_text {
    font-size: calc(26* (100vw /750));
    font-weight: 300;
    letter-spacing: 0.1em;
    line-height: 1.84;
    text-align: center;
  }

/************** schedule **************/
  .schedule {
    margin: 0 auto calc(115* (100vw /750));
  }

  /*** schedule_ttl ***/
  .schedule_ttl {
    margin-bottom: calc(56* (100vw /750));
  }

  .schedule_ttl p {
    text-align: center;
  }

  .schedule_ttl01 {
    margin-bottom: calc(16* (100vw /750));
    font-size: calc(50* (100vw /750));
    letter-spacing: 0.1em;
    font-family: 'Hanken Grotesk', sans-serif;
    font-weight: 500;
  }

  .schedule_ttl02 {
    font-size: calc(24* (100vw /750));
    letter-spacing: 0.12em;
    font-weight: 300;
  }

  /*** schedule_text ***/
  .schedule_text {
    padding: calc(59* (100vw /750)) 0 calc(55* (100vw /750));
    display: flex;
    align-items: center;
    border-top: 1px solid #959595;
    border-bottom: 1px solid #959595;
    position: relative;
  }

  .schedule_text::before{
    width: calc(2* (100vw /750));
    height: 102%;
    content: '';
    display: block;
    position: absolute;
    left: calc(148* (100vw /750));
    background-size: contain;
    background-image: url(../img/sp_schedule_line.svg);
  }

  .schedule_text01 {
    margin-left: calc(32* (100vw /750));
    font-size: calc(28* (100vw /750));
    font-weight: 300;
    letter-spacing: 0.12em;
  }

  .schedule_text02 {
    margin-left: calc(86* (100vw /750));
  }

  .schedule_text02 p {
    font-weight: 300;
    letter-spacing: 0.12em;
  }

  .schedule_text02_1 {
    margin-bottom: calc(28* (100vw /750));
    font-size: calc(26* (100vw /750));
  }

  .schedule_text02_2 {
    font-size: calc(27* (100vw /750));
  }


/************** sec01 **************/
  .sec01 {
    margin: 0 auto calc(106* (100vw /750));
    padding-bottom: calc(120* (100vw /750));
    position: relative;
    overflow: hidden;
  }

  .sec01::before {
    width: 100%;
    height: 100%;
    content: '';
    display: block;
    position: absolute;
    top: calc(34* (100vw /750));
    background-repeat: no-repeat;
    background-size: contain;
    background-color: #FFFAFA;
    z-index: -1;
  }

  .sec01 h3 p {
    color: #FFADAD;
  }

  /*** sec01_box01 ***/
  .sec01_box01 {
    margin-bottom: calc(58* (100vw /750));
  }

  /*** img01 ***/
  .img01 img {
    margin-bottom: calc(28* (100vw /750));
  }

  /*** sec_text_tax ***/
  .sec_text_tax {
    margin-bottom: calc(40* (100vw /750));
    font-size: calc(24* (100vw /750));
    letter-spacing: 0.1em;
    line-height: 1.75;
    font-weight: 300;
    color: #404040;
  }

  /*** sec01_box02 ***/
  .img02_box,.img03_box,.img04_box  {
    width: calc(580* (100vw /750));
  }

  .white_box {
    padding: calc(30* (100vw /750)) calc(34* (100vw /750)) calc(22* (100vw /750));
    margin: calc(-18* (100vw /750)) auto 0;
    width: calc(497* (100vw /750));
    background-color: #FFFFFF;
    border-radius: 10px; 
    position: relative;
    z-index: 10;
    box-shadow: 2px 1px 2px 0 rgba(0, 0, 20, .16);
  }

  .white_box::before{
    width: calc(133* (100vw /750));
    height: calc(133* (100vw /750));
    content: '';
    display: block;
    position: absolute;
    top: calc(-63* (100vw /750));
    right: calc(-23* (100vw /750));
    left: auto;
    z-index: 11;
    background-repeat: no-repeat;
    background-size: contain;
  }
  
  .img02_box .white_box::before {
    background-image: url(../img/sp_icon_yellow.svg);
  }

  .img03_box .white_box::before {
    background-image: url(../img/sp_icon_red.svg);
  }

  .img04_box .white_box::before {
    background-image: url(../img/sp_icon_greem.svg);
  }
  
  .white_text_box_ttl {
    margin-bottom: calc(13* (100vw /750));
    font-size: calc(37* (100vw /750));
    letter-spacing: 0.075em;
    font-family: 'Outfit', sans-serif;
    font-weight: 500;
  }

  .white_box_text {
    font-size: calc(26* (100vw /750));
    letter-spacing: 0.1em;
    line-height: 1.53;
  }

  /*** img02_box ***/
  .img02_box {
    margin-bottom: calc(60* (100vw /750));
  }

  .img02_box .white_text_box_ttl {
    color: #DBD996;
  }

  /*** img03_box ***/
  .img03_box {
    margin: 0 0 calc(60* (100vw /750)) auto;
  }

  .img03_box .white_text_box_ttl {
    color: #EFC1C1;
  }

  /*** img04_box ***/
  .img04_box .white_text_box_ttl {
    color: #ADD3C7;
  }


/************** sec02 **************/
  .sec02 {
    margin: 0 auto calc(105* (100vw /750));
    padding-bottom: calc(107* (100vw /750));
    position: relative;
    overflow: hidden;
  }

  .sec02::before {
    width: 100%;
    height: 100%;
    content: '';
    display: block;
    position: absolute;
    top: calc(34* (100vw /750));
    background-repeat: no-repeat;
    background-size: contain;
    background-color: #F7FCFB;
    z-index: -1;
  }

  .sec02 h3 p {
    color: #91CCC3;
  }

  .img05 {
    margin-bottom: calc(50* (100vw /750));
  }


/************** sec03 **************/
  .sec03 {
    margin: 0 auto calc(110* (100vw /750));
    padding-bottom: calc(108* (100vw /750));
    position: relative;
    overflow: hidden;
  }

  .sec03::before {
    width: 100%;
    height: 100%;
    content: '';
    display: block;
    position: absolute;
    top: calc(34* (100vw /750));
    background-repeat: no-repeat;
    background-size: contain;
    background-color: #FAFAFA;
    z-index: -1;
  }

  .sec03 h3 {
    margin-bottom: calc(12* (100vw /750));
  }

  .sec03 h3 p {
    color: #A3DD9E;
  }

  .sec_text02 {
    margin-bottom: calc(50* (100vw /750));
    font-size: calc(24* (100vw /750));
    letter-spacing: 0.1em;
    line-height: 1.58;
    font-weight: 300;
  }

  /*** img06_box ***/
  .img06_box {
    margin-bottom: calc(56* (100vw /750));
  }

  .img06 {
    margin-bottom: calc(35* (100vw /750));
  }

  /*** item_content ***/
  .sec03 .item_content {
    margin: 0 auto calc(46* (100vw /750));
    width: auto;
    gap: calc(38* (100vw /750)) calc(100* (100vw /750));
    justify-content: center;
  }

  .sec03 .item_content li {
    width: calc(192* (100vw /750));
  }


/************** sec04 **************/
  .sec04 {
    margin: 0 auto calc(111* (100vw /750));
    padding-bottom: calc(48* (100vw /750));
    position: relative;
    overflow: hidden;
  }

  .sec04::before {
    width: 100%;
    height: 100%;
    content: '';
    display: block;
    position: absolute;
    top: calc(58* (100vw /750));
    background-repeat: no-repeat;
    background-size: contain;
    background-color: #FAFAFA;
    z-index: -1;
  }

  /*** sec04_box01 ***/
  .sec04_box01 {
    margin-bottom: calc(60* (100vw /750));
  }

  .img07_box {
    margin-bottom: calc(60* (100vw /750));
  }

  .img07 {
    margin-bottom: calc(34* (100vw /750));
  }

  /*** item_content ***/
  .sec04 .item_content {
    margin: 0 auto calc(54* (100vw /750));
    width: auto;
    gap: calc(32* (100vw /750)) calc(53* (100vw /750));
    justify-content: center;
  }

  .sec04 .item_content li {
    width: calc(171* (100vw /750));
  }


/************** sec05 **************/
  .sec05 {
    margin: 0 auto calc(100* (100vw /750));
    padding-bottom: calc(120* (100vw /750));
    position: relative;
    overflow: hidden;
  }

  .sec05::before {
    width: 100%;
    height: 100%;
    content: '';
    display: block;
    position: absolute;
    top: calc(58* (100vw /750));
    background-repeat: no-repeat;
    background-size: contain;
    background-color: #FAFAFA;
    z-index: -1;
  }

  .sec05 .sec_text {
    margin-bottom: calc(48* (100vw /750));
  }

  /*** sec_number ***/
  .sec05 .sec_number_text {
    margin-bottom: calc(50* (100vw /750));
    padding-bottom: calc(19* (100vw /750));
    align-items: flex-start;
  }

  .sec05 .sec_number_text02_1 {
    margin: calc(10* (100vw /750)) 0 calc(8* (100vw /750));
  }
  
  .sec05 .sec_number_text02_2 {
    line-height: 1.5;
  }

  /*** sec05_box01 ***/
  .sec05_box01 {
    margin-bottom: calc(66* (100vw /750));
  }

  .img08_box {
    margin-bottom: calc(60* (100vw /750));
  }

  .img08 {
    margin-bottom: calc(36* (100vw /750));
  }

  /*** sec05_box02 ***/
  .sec05_box02 {
    width: 100%;
  }

  .img09_box {
    margin-bottom: calc(60* (100vw /750));
  }

  .img09 {
    margin-bottom: calc(36* (100vw /750));
  }

  /*** item_content ***/
  .sec05_box01 .item_content {
    margin: 0 auto;
    width: calc(598* (100vw /750));
    justify-content: space-between;
  }

  .sec05_box01 .item_content li {
    width: calc(279* (100vw /750));
  }

  .sec05_box02 .item_content {
    margin: 0 auto;
    width: calc(549* (100vw /750));
    justify-content: space-between;
  }

  .sec05_box02 .item_content li {
    width: calc(255* (100vw /750));
  }
  
/************** last_text **************/
  .last_text {
    margin: 0 auto calc(118* (100vw /750));
    width: calc(690* (100vw /750));
    font-size: calc(24* (100vw /750));
    background-color: #FAFAFA;
  }

  .last_text p {
    padding: calc(47* (100vw /750)) calc(54* (100vw /750)) calc(50* (100vw /750)) calc(60* (100vw /750));
    font-size: calc(24* (100vw /750));
    letter-spacing: 0.12em;
    line-height: 2;
  }

/************** btn **************/
  .white_btn {
    margin: 0 auto;
    width: calc(520* (100vw /750));
    height: calc(90* (100vw /750));
    font-size: calc(26* (100vw /750));
    max-width: 100%;
    max-height: 100%;
    font-weight: 600;
    letter-spacing: 0.05em;
    line-height: 1;
  }


/* ===============================================
### PC用デザイン###
=============================================== */
  @media screen and (min-width:768px) {

  .sp_only {
    display: none;
  }

  .pc_only {
    display: block;
  }

  .main-area {
    margin-bottom: 10.8rem;
  }
  
  .mv_img.page_loaded:before {
    height: 45rem;
  }

  /************** common **************/
  .sec {
    margin: 0 auto;
    width: 108rem;
    position: relative;
  }

  /*** sec_ttl ***/
  .sec h3 {
    margin-bottom: 3.3rem;
  }
  
  .sec_ttl_1 {
    font-size: 2.7rem;
  }

  .sec_ttl_2 {
    margin-left: .9rem;
    font-size: 4.5rem;
  }

  .sec_ttl_3 {
    margin-left: 3.3rem;
    font-size: 3.7rem;
  }

  /*** sec_sub_ttl ***/
  .sec_sub_ttl {
    margin-bottom: 3.2rem;
    padding-bottom: .9rem;
    font-size: 3rem;
    border-bottom: 2px solid #000;
  }

  /*** sec_text ***/
  .sec_text {
    font-size: 1.4rem;
    line-height: 2.14;
    font-weight: 300;
  }

  .sec_text span {
    margin-top: 0.5rem;
    font-size: 1.2rem;
    display: inline-block;
  }

  /*** sec_number_text ***/
  .sec_number_text {
    margin: 0 0 3.3rem 0;
    padding-bottom: 1.6rem;
    display: flex;
    gap: 0 1.7rem;
    align-items: center;
    border-bottom: 1px solid #000;
  }

  .sec_number_text01 {
    font-size: 6.5rem;
  }

  .sec_number_text02 {
    margin-bottom: 1rem;
    font-size: 1.8rem;
  }

  .sec_number_text02_1 {
    margin-bottom: .6rem;
  }

  .sec_number_text02_2 {
    font-size: 3rem;
    font-weight: 400;
    letter-spacing: 0.12em;
  }

  /*** sec_tax ***/
  .sec_tax {
    margin-left: 0;
    font-size: 1.2rem;
    font-weight: 300;
    letter-spacing: 0.1em;
  }

  .sec_tax li a {
    text-decoration: underline;
  }

  /*** item_content ***/
  .item_content {
    display: flex;
    flex-wrap: wrap;
  }

  .item_content li {
    mix-blend-mode: darken;
  }

  .item_box {
    height: max-content;
  }

/************** mv **************/
  .sec_mv {
    margin: 0 auto 5.8rem;
  }

  /*** mv_text ***/
  .mv_text {
    font-size: 1.4rem;
    letter-spacing: 0.12em;
    line-height: 2;
  }

/************** schedule **************/
  .schedule {
    margin: 0 auto 9.4rem;
    width: 90rem;
  }

  /*** schedule_ttl ***/
  .schedule_ttl {
    margin-bottom: 4rem;
  }

  .schedule_ttl01 {
    margin-bottom: 1rem;
    font-size: 3.6rem;
  }

  .schedule_ttl02 {
    font-size: 1.4rem;
  }

  /*** schedule_text ***/
  .schedule_text {
    padding: 2.8rem 0 2.8rem;
  }

  .schedule_text::before{
    width: 1px;
    height: 100%;
    left: 10.5rem;
    background-image: url(../img/pc_schedule_line.svg);
  }

  .schedule_text::after{
    width: 1px;
    height: 100%;
    content: '';
    display: block;
    position: absolute;
    left: 34.6rem;
    background-size: contain;
    background-image: url(../img/pc_schedule_line.svg);
  }

  .schedule_text01 {
    margin-left: 3rem;
    font-size: 1.4rem;
  }

  .schedule_text02 {
    margin-left: 7.3rem;
    display: flex;
    gap: 0 10.8rem;
  }

  .schedule_text02 p {
    font-weight: 300;
    letter-spacing: 0.12em;
    font-size: 1.4rem;
  }
  
  .schedule_text02_1 {
    margin: 0;
  }
  

/************** sec01 **************/
  .sec01 {
    margin: 0 auto 7rem;
    padding-bottom: 6rem;
    position: relative;
    overflow: hidden;
  }

  .sec01::before {
    top: 2.6rem;
  }

  /*** sec01_box01 ***/
  .sec01_box01 {
    margin-bottom: -.8rem;
    width: 108rem;
    display: flex;
    justify-content: space-between;
  }

  .sec01_box01 .sec_text {
    margin-top: 7rem;
    width: 40.5rem;
  }

  /*** img01 ***/
  .img01 {
    width: 61.7rem;
  }

  .img01 img {
    margin-bottom: 1.1rem;
  }

  /*** sec_text_tax ***/
  .sec_text_tax {
    margin-bottom: 0;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    color: #404040;
  }

  /*** sec01_box02 ***/
  .sec01_box02 {
    margin: 0 auto;
    width: 107.9rem;
    display: flex;
    justify-content: space-between;
  }

  .white_box {
    padding: 2rem 2.4rem 1.6rem;
    margin: -1.5rem auto 0;
    width: 26rem;
    border-radius: 14px; 
    box-shadow: 2px 1px 2px 0 rgba(0, 0, 20, .16);
  }

  .white_box::before{
    width: 6.9rem;
    height: 6.9rem;
    top: -2.5rem;
    right: -1.5rem;
  }

  .img02_box .white_box::before {
    background-image: url(../img/pc_icon_yellow.svg);
  }

  .img03_box .white_box::before {
    background-image: url(../img/pc_icon_red.svg);
  }

  .img04_box .white_box::before {
    background-image: url(../img/pc_icon_greem.svg);
    top: -2.5rem;
    right: -2rem;
  }

  .white_text_box_ttl {
    margin-bottom: 1.1rem;
    font-size: 1.8rem;
  }

  .white_box_text {
    font-size: 1.2rem;
    line-height: 1.66;
  }

  /*** img02_box ***/
  .img02_box {
    margin: 9.9rem 0 0 0;
    width: 32.2rem;
  }

  /*** img03_box ***/
  .img03_box {
    margin: 4.9rem 0 0 .6rem;
    width: 32rem;
  }

  /*** img04_box ***/
  .img04_box {
    margin: 0;
    width: 33rem;
  }

/************** sec02 **************/
  .sec02 {
    margin: 0 auto 7.6rem;
    padding-bottom: 0;
  }

  .sec02::before {
    height: 35.6rem;
    top: 7.8rem;
  }

  .sec02 .sec h3 {
    margin: 0;
    position: absolute;
    top: 5.1rem;
  }

  .sec02 .sec_sub_ttl {
    margin: 0;
    width: 61.2rem;
    position: absolute;
    top: 13.7rem;
  }

  .sec02_box01 {
    margin: 0 auto;
    position: relative;
    width: 108rem;
    height: 51rem;
  }

  .img05_box {
    width: 108rem;
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    position: absolute;
    top: 0;
  }

  .img05 {
    margin: 0;
    width: 41rem;
  }
  
  .img05_box .sec_text {
    margin-top: 26.2rem;
    width: 61.1rem;
  }


  /************** sec03 **************/
  .sec03 {
    margin: 0 auto 6.9rem;
    padding-bottom: 6rem;
    position: relative;
    overflow: hidden;
  }

  .sec03::before {
    top: 2.5rem;
  }

  .sec_ttl_box {
    margin-bottom: 3.9rem;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .sec03 h3 {
    margin-bottom: 0;
    width: max-content;
  }

  .sec_text02 {
    margin-bottom: 0;
    width: 57rem;
    font-size: 1.3rem;
    letter-spacing: 0.1em;
    line-height: 1.53;
    font-weight: 300;
  }

  .sec03_box01 {
    margin-bottom: 0;
    width: 108rem;
    display: flex;
    justify-content: space-between;
  }

  .sec03 .sec_number_text01 {
    margin-top: -.7rem;
  }

  /*** sec_number ***/
  .sec03 .sec_number_text {
    padding-bottom: .4rem;
    align-items: flex-start;
  }

  /*** img06_box ***/
  .img06_box {
    margin-bottom: 0;
    width: 48.2rem;
  }

  .img06 {
    margin-bottom: 2rem;
  }

  /*** item_content ***/
  .sec03 .item_box {
    margin-top: 4.6rem;
    width: 54rem;
    display: flex;
    align-items: center;
    flex-direction: column;
  }

  .sec03 .item_content {
    margin: 0 0 5.4rem;
    width: 34.5rem;
    gap: 2.8rem 0;
    justify-content: space-between;
  }

  .sec03 .item_content li {
    width: 13.4rem;
  }


/************** sec04 **************/
  .sec04 {
    margin: 0 auto 6.2rem;
    padding-bottom: 5.1rem;
  }

  .sec04::before {
    top: 3rem;
  }

  .sec04 .sec_number_text01 {
    margin-top: -.7rem;
  }

  /*** sec_number ***/
  .sec04 .sec_number_text {
    padding-bottom: .4rem;
    align-items: flex-start;
  }

  /*** sec04_box01 ***/
  .sec04_box01 {
    margin-bottom: 0;
    width: 108rem;
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
  }

  .img07_box {
    margin-bottom: 0;
    width: 48.2rem;
  }

  .img07 {
    margin-bottom: 2rem;
  }

  /*** item_content ***/
  .sec04 .item_box {
    margin-top: 6.8rem;
    width: 54rem;
    display: flex;
    align-items: center;
    flex-direction: column;
  }

  .sec04 .item_content {
    margin: 0 0 5.4rem;
    width: 42.3rem;
    gap: 2.3rem 3.6rem;
    justify-content: center;
  }

  .sec04 .item_content li {
    width: 11.7rem;
  }


/************** sec05 **************/
  .sec05 {
    margin: 0 auto 8rem;
    padding-bottom: .8rem;
  }

  .sec05 .sec {
    position: relative;
    height: 119.5rem;
  }

  .sec05::before {
    top: 3.7rem;
  }

  .sec05 .sec_text {
    margin-bottom: 3.8rem;
  }

  /*** sec_number ***/
  .sec05 .sec_number_text {
    margin-bottom: 2.4rem;
    padding-bottom: 0;
    align-items: flex-start;
  }

  .sec05 .sec_number_text02_1 {
    margin: .8rem 0 0 0;
  }
  
  .sec05 .sec_number_text02_2 {
    line-height: 1.5;
  }

  /*** sec05_box01 ***/
  .sec05_box01 {
    margin-bottom: 0;
    width: 96.3rem;
    position: absolute;
    top: 19.8rem;
    display: flex;
    justify-content: space-between;
  }

  .img08_box {
    margin-bottom: 0;
    width: 41rem;
  }

  .img08 {
    margin-bottom: 2rem;
  }

  /*** sec05_box02 ***/
  .sec05_box02 {
    width: 89.1rem;
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    position: absolute;
    top: auto;
    right: 0rem;
    bottom: 5rem;
    left:auto;
  }

  .img09_box {
    margin-bottom: 0;
    width: 41rem;
  }

  .img09 {
    margin-bottom: 2rem;
  }

  /*** item_content ***/
  .sec05_box01 .item_content {
    margin: 2rem 0 0 0;
    width: 47.8rem;
  }

  .sec05_box01 .item_content li {
    width: 22.3rem;
  }

  .sec05_box02 .item_content {
    margin: 0;
    width: 40.1rem;
    justify-content: space-between;
  }

  .sec05_box02 .item_content li {
    width: 18.7rem;
  }

  .sec05_box02 .item_box {
    margin: auto 0 .9rem 0;
  }
  
/************** last_text **************/
  .last_text {
    margin: 0 auto 7.9rem;
    width: 107rem;
    font-size: 1.4rem;
  }

  .last_text p {
    padding: 3.8rem 10rem 4rem 15.2rem;
    font-size: 1.4rem;
    letter-spacing: 0.1em;
    line-height: 2;
  }

/************** btn **************/
  .white_btn {
    margin: 0 auto;
    width: 36rem;
    height: 6rem;
    font-size: 1.5rem;
    max-width: 100%;
    max-height: 100%;
    font-weight: 600;
    letter-spacing: 0.05em;
    line-height: 1;
  }

}


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

