﻿html{
  -webkit-font-smoothing: antialiased;
}

/*================ Breadcrumb ================*/
@media only screen and (max-width: 750px) {
  #main-container .cateList{
    display: flex;
    width: 89%;
    margin: auto;
    padding: calc(60 * (100vw / 390)) 0 calc(15 * (100vw / 390));
    color: var(--breadcrumbColor);
    font-size: calc(10 * (100vw / 390));
    font-weight: normal;
    letter-spacing: 0.01em;
    line-height: calc(20 * (100vw / 390));
    flex-wrap: wrap;
  }
  #main-container .cateList span{
    display: inline-block;
  }
  .main-container{
    margin: 0 auto;
  }
}
@media only screen and (min-width: 750px){
  #main-container .cateList {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      width: calc(1280 * (100vw / 1400));
      max-width: 1280px;
      margin: auto;
      margin-bottom: calc(28 * (100vw / 1400));
      padding: calc(120* (100vw / 1400 )) calc(40 * (100vw / 1400)) 0 0;
      font-family: noto-sans-cjk-jp, sans-serif;
      font-style: normal;
      color: var(--breadcrumbColor);
      font-size: calc(13 * (100vw / 1400));
      letter-spacing: 0.02em;
      line-height: normal;
  }
  .main-container{
    margin: 4rem auto 0;
    padding: 4rem 0 0;
  }
}
@media only screen and (min-width: 1400px){
  #main-container .cateList {
    margin: 0 auto 28px;
    padding: 130px 40px 20px 0;
    font-size: 13px;
    height: 50px;
    font-style: normal;
    font-weight: normal;
  }
}


body{
  -webkit-font-smoothing: subpixel-antialiased;
  }
/* base style */


#main-container a:hover{
  opacity: 0.7;
}

.main-area,
.main_inner {
  overflow-x: hidden;
  width: 100% !important;
  margin: 0 auto;
  -webkit-font-feature-settings: normal;
  font-feature-settings: normal;
  font-family: "bebas-neue-pro", sans-serif;
  font-weight: 500;
  font-style: normal;
  text-align: left;
  color: #000000;
}

.main-area *,
.main_inner * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  list-style: none;
}

.main-area *::before,
.main-area *::after,
.main_inner *::before,
.main_inner *::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.main-area img,
.main-area svg,
.main_inner img,
.main_inner svg {
  height: auto;
  width: 100% !important;
}

#main-container picture {
  display: block;
}

.main-area a {
  display: inline-block;
}


@media only screen and (max-width: 559px) {
  .sp {
    display: block !important;
  }

  .pc {
    display: none !important;
  }
}

@media only screen and (min-width: 560px) {

  /* ===========================
  * Style of Tablet-view *
  =========================== */
  #main-container {
    padding: 0;
  }

  #main-container .item-content {
    margin: auto;
  }

  .main-area,
  .main_inner {
    padding: 0;
  }

  .sp {
    display: none !important;
  }

  .pc {
    display: block !important;
  }
}

@media only screen and (min-width: 1400px) {

  /* ===========================
* Style of Tablet-view *
=========================== */
  #main-container {
    padding: 0;
  }
}


.main-area {
  font-family: noto-sans-cjk-jp, sans-serif;
  line-height: 2;
  letter-spacing: 0.04em;
  text-align: justify;
}

.main-area .ff_bebas {
  font-family: "bebas-neue-pro", sans-serif;
  font-weight: 600;
  font-style: normal;
}


/*========================================================
common
========================================================*/
.img_white{
  background: #fff;
  position: relative;
  z-index: 1;
}

.lp_area .sec .border_none{
  border: none !important;
}

.lp_area .sec .sec_head span{
  display: block;
  font-family: "azo-sans-web", sans-serif;
  font-weight: 700;
}

.lp_area a{
  display: block;
}

.lp_area .sec_head{
  font-family: "azo-sans-web", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: calc( 48*(100vw / 390));
  text-align: right;
  letter-spacing: 0.1em;
  line-height: 1;
}

.lp_area .sec_sub_head{
  font-family: "azo-sans-web", sans-serif;
  font-weight: 500;
  font-style: normal;
  line-height: 1.3;
  font-size: calc( 30*(100vw / 390));
  text-align: right;
  letter-spacing: 0.1em;
}

.lp_area .sec_sub_head span{
  display: block;
  font-family: "azo-sans-web", sans-serif;
  font-weight: 500;
  line-height: 1.2;
}

.lp_area .sec_tax{
  position: absolute;
  font-style: normal;
  letter-spacing: 0.02em;
  font-size: calc( 11*(100vw / 390));
  display: flex;
  flex-wrap: wrap;
  column-gap: calc( 14*(100vw / 390));
  z-index: 5;
}

.lp_area .sec_tax li{
  font-family: "azo-sans-web", sans-serif;
  font-weight: 400;
  text-decoration: underline;

}

.lp_area .sec_tax.--left{
  position: absolute;
  left: calc( 15*(100vw / 390));
  bottom: calc( 3*(100vw / 390));
}

.lp_area .sec_tax.--right{
  position: absolute;
  right: calc( 15*(100vw / 390));
  bottom: calc( 5*(100vw / 390));
  text-align: right;
}

.lp_area .sec_check_btn a{
  line-height: 1;
  font-family: "azo-sans-web", sans-serif;
  display: flex;
  justify-content: center;
  align-items: center;
  width: calc( 280*(100vw / 390));
  height: calc( 54*(100vw / 390));
  margin: auto;
  color: #fff;
  background-color: #13869D;
  font-size: calc( 18*(100vw / 390));
  letter-spacing: 0.1em;
  font-weight: 500;
}

.lp_area .sec_btn{
  width: calc( 80*(100vw / 390));
}


@media only screen and (max-width: 559px) {
  .lp_area .sec .border_none_sp{
    border: none !important;
  }
}
@media only screen and (min-width: 560px) {
  #main-container .img_white > a:hover{
    opacity: 1;
  }
  #main-container .img_white > a{
    position: relative;
  }
  #main-container .img_white > a:hover::before{
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.3);
    z-index: 1;
  }

  .lp_area .sec_head{
    font-size: calc(70* (100vw / 1400 ));
  }
  

  .lp_area .sec_sub_head{
    font-size: calc( 50*(100vw / 1400));
    line-height: 1.2;
  }

  .lp_area .sec_tax{
    font-size: calc(11* (100vw / 1400 ));
    column-gap: calc(15* (100vw / 1400 ));
  }

  .lp_area .sec_tax.--left{
    position: absolute;
    left:calc(20* (100vw / 1400 ));
    bottom: calc(10* (100vw / 1400 ));
  }
  
  .lp_area .sec_tax.--right{
    position: absolute;
    right: calc(20* (100vw / 1400 ));
    bottom: calc(10* (100vw / 1400 ));
    text-align: right;
  }
  
  .lp_area .sec_btn{
    width: calc(80* (100vw / 1400 ));
  }

  .lp_area .sec_check_btn a{
    width: calc( 280*(100vw / 1400));
    height: calc( 54*(100vw / 1400));
    font-size: calc( 18*(100vw / 1400));
  }
  

}

@media only screen and (min-width: 1401px) {
  .lp_area .sec_head{
    font-size: 70px;
  }

  .lp_area .sec_sub_head{
    font-size: 50px;
  }

  .lp_area .sec_tax{
    font-size: 11px;
    column-gap: 15px;
  }
  .lp_area .sec_tax li{
    font-family: "azo-sans-web", sans-serif;
    font-weight: 400;
  }
  
  .lp_area .sec_tax.--left{
    position: absolute;
    left:20px;
    bottom: 10px;
  }
  
  .lp_area .sec_tax.--right{
    position: absolute;
    right: 20px;
    bottom: 10px;
    text-align: right;
  }
  
  .lp_area .sec_btn{
    width: 80px;
  }

  .lp_area .sec_check_btn a{
    width: 280px;
    height: 54px;
    font-size: 18px;
  }

}

/*========================================================
mainvisual
========================================================*/

.lp_area .mv_img{
  position: relative;
  width: 100% ;
  margin: auto;
  background: #FAF6F0;
  padding-bottom: calc( 22 *(100vw / 390));
  padding-top: calc( 40*(100vw / 390));
}

.lp_area .mv_img::before{
  content: "";
  position: absolute;
  background-image: url(../img/sp_mv_bg.png);
  top: 0;
  left: 0;
  background-size: cover;
  width: calc( 390 *(100vw / 390));
  height: calc( 20*(100vw / 390));
  background-repeat: no-repeat;
}

.lp_area .mv_model{
  position: relative;
  overflow: hidden;
  width: calc( 290*(100vw / 390));
  margin: auto;
}

.lp_area .mv_stamp{
  position: absolute;
  bottom: calc( 124 *(100vw / 390));
  right: calc( 34*(100vw / 390));
  font-size: calc( 16*(100vw / 390));
}

.lp_area .mv_stamp_inner{
  position: relative;
  letter-spacing: 0.1em;
  line-height: 1.18;
  color: #13869D;
  text-align: center;
}

.lp_area .mv_stamp_inner span:first-of-type{
  position: relative;
  z-index: 2;
  font-family: "azo-sans-web", sans-serif;
  font-weight: bold;
}

.lp_area .mv_stamp_inner span:last-of-type:before{
  content: "";
  position: absolute;
  width: calc( 112*(100vw / 390));
  top: calc( -38*(100vw / 390));
  left: calc( -26*(100vw / 390));
  height: calc(112* (100vw / 390 ));
  background-image: url(../img/mv_stanp.png);
  background-repeat: no-repeat;
  background-size: contain;
}

.lp_area .mv_ttl{
  width: calc( 329*(100vw / 390));
  margin: auto;
  margin-top: calc( 25 *(100vw / 390));
}

.lp_area .mv_text{
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.02em;
  font-size: calc( 14*(100vw / 390));
  margin-top: calc( 37 *(100vw / 390));
  text-align: center;
}


@media only screen and (min-width: 560px) {
  

  .lp_area .mv_img{
    position: relative;
    width: calc(1200* (100vw / 1400 ));
    margin: auto;
    background: #FAF6F0;
    padding-bottom: calc( 34 *(100vw / 1400));
    padding-top: calc( 65*(100vw / 1400));
  }
  
  .lp_area .mv_img::before{
    width: calc( 1200 *(100vw / 1400));
    height: calc(30* (100vw / 1400 ));
    background-image: url(../img/pc_mv_bg.png);
  }
  
  .lp_area .mv_model{
    width: calc( 400*(100vw / 1400));
    margin: 0;
    margin-left: calc(148* (100vw / 1400 ));
  }
  
  .lp_area .mv_stamp{
    position: absolute;
    bottom: calc( -2 *(100vw / 1400));
    right: calc( 0*(100vw / 1400));
    font-size: calc( 24*(100vw / 1400));
  }
  
  .lp_area .mv_stamp_inner{
    position: absolute;
    letter-spacing: 0.1em;
    line-height: 1.18;
    color: #13869D;
    text-align: center;
  }
  
  .lp_area .mv_stamp_inner span:first-of-type{
    position: absolute;
    white-space: nowrap;
    z-index: 2;
    font-family: "azo-sans-web", sans-serif;
    font-weight: bold;
    top: calc(-138* (100vw / 1400 ));
    right: calc(62* (100vw / 1400 ));
  }
  
  .lp_area .mv_stamp_inner span:last-of-type:before{
    content: "";
    position: absolute;
    top: auto;
    left: auto;
    right: calc(30* (100vw / 1400 ));
    bottom: calc(30* (100vw / 1400 ));
    width: calc( 160*(100vw / 1400));
    height: calc(160* (100vw / 1400 ));
    background-image: url(../img/mv_stanp.png);
    background-repeat: no-repeat;
    background-size: contain;
  }
  
  .lp_area .mv_ttl{
    width: calc(448* (100vw / 1400 ));
    height: calc(166* (100vw / 1400 ));
    position: absolute;
    top: 52%;
    transform: translateY(-50%);
    margin: 0;
    right: calc(120* (100vw / 1400 ));
  }
  
  .lp_area .mv_text{
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    line-height: 2;
    letter-spacing: 0.02em;
    font-size: calc( 18*(100vw / 1400));
    margin-top: calc( 46 *(100vw / 1400));
    text-align: center;
  }
}


@media only screen and (min-width: 1401px) {
  .lp_area .mv_img{
    width: 1200px;
    padding-bottom: 34px;
    padding-top: 65px;
  }
  
  .lp_area .mv_img::before{
    width: 1200px;
    height: 30px;
  }
  
  .lp_area .mv_model{
    width: 400px;
    margin-left: 148px;
  }
  
  .lp_area .mv_stamp{
    position: absolute;
    bottom: -2px;
    right: 0;
    font-size: 24px;
  }
  
  .lp_area .mv_stamp_inner span:first-of-type{
    top: -138px;
    right: 62px;
  }
  
  .lp_area .mv_stamp_inner span:last-of-type:before{
    right: 30px;
    bottom: 30px;
    width: 160px;
    height: 160px;
  }
  
  .lp_area .mv_ttl{
    width: 448px;
    height: 166px;
    right: 120px;
  }
  
  .lp_area .mv_text{
    font-size: 18px;
    margin-top: 46px;
  }
}

/*========================================================
section --01
========================================================*/
.lp_area .sec.--01{
  padding-top: calc(64 * (100vw / 390 ));
}

.lp_area .sec.--01 .sec_img_wrap{
  position: relative;
}

.lp_area .sec.--01 .sec_img{
  position: relative;
  width: calc( 350*(100vw / 390));
  margin: auto;
  margin-top: calc(20 * (100vw / 390 ));
}

.lp_area .sec.--01 .sec_img_wrap.--01 .sec_head{ 
  text-align: left;
  color: #fff;
  -webkit-text-stroke: 1px #13869D;
  text-stroke: 1px #13869D;
  padding-left: calc( 20*(100vw / 390));
}

.lp_area .sec.--01 .sec_img_wrap.--01 .sec_head span:last-of-type { 
  padding-left: calc( 105*(100vw / 390));
}

.lp_area .sec.--01 .sec_img_wrap.--02{
  margin-top: calc( 80*(100vw / 390));
}

.lp_area .sec.--01 .sec_img .sec_tax{
  flex-direction: column;
}

.lp_area .sec.--01 .sec_img02{
  width: calc( 260*(100vw / 390));
  margin: auto;
}

.lp_area .sec.--01 .sec_img02 > a{
  position: relative;
}

.lp_area .sec.--01 .sec_img02 > a::before{
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #13869D;
  z-index: -1;
}

.lp_area .sec.--01 .sec_img02 .sec_tax{
  display: block;
  position: initial;
  margin-top: calc( 10*(100vw / 390));
}

.lp_area .sec.--01 .sec_img03{
  width: calc( 280*(100vw / 390));
  margin-left: calc( 63*(100vw / 390));
  margin-top: calc( 68*(100vw / 390));
}

.lp_area .sec.--01 .sec_img03 > a{
  position: relative;
}

.lp_area .sec.--01 .sec_img03 > a::before{
  content: "";
  position: absolute;
  border: #13869D 1px solid;
  width: 100%;
  height: 100%;
  top: calc( -16*(100vw / 390));
  left: auto;
  right: calc( 15*(100vw / 390));
  z-index: -1;
}

.lp_area .sec.--01 .sec_img03 .sec_tax{
  position: initial;
  margin-top: calc( 10*(100vw / 390));
}

.lp_area .sec.--01 .sec_img03 .sec_tax li:nth-of-type(2){
  margin-right: 10px;
}

.lp_area .sec.--01 .sec_check_btn a {
  margin-top: calc( 48*(100vw / 390));
}

@media only screen and (min-width: 560px) {
  .lp_area .sec.--01{
    width: calc(1200* (100vw / 1400 ));
    margin: auto;
    padding-top: calc(95 * (100vw / 1400 ));
  }
  
  .lp_area .sec.--01 .sec_img_wrap.--01{
    position: relative;
    width: calc(460* (100vw / 1400 ));
    margin: auto;
  }
  
  .lp_area .sec.--01 .sec_img{
    position: relative;
    width: 100%;
    margin-top: 0;
  }
  
  .lp_area .sec.--01 .sec_img_wrap.--01 .sec_head{
    padding-left: 0;
    writing-mode: vertical-rl;
    white-space: nowrap;
    line-height: 1.2;
  }
  
  .lp_area .sec.--01 .sec_img_wrap.--01 .sec_head span:first-of-type {
    position: absolute;
    top: calc(210* (100vw / 1400 ));
    right: calc(-579* (100vw / 1400 ));
  }
  
  .lp_area .sec.--01 .sec_img_wrap.--01 .sec_head span:last-of-type {
    padding-left: 0;
    position: absolute;
    top: calc(165* (100vw / 1400 ));
    left: calc(-117* (100vw / 1400 ));
  }
  
  .lp_area .sec.--01 .sec_img_wrap.--02{
    margin-top: calc( 105*(100vw / 1400));
    display: flex;
    align-items: flex-start;
    gap: calc(100* (100vw / 1400 ));
    margin-left: calc(210* (100vw / 1400 ));
  }
  
  .lp_area .sec.--01 .sec_img .sec_tax{
    flex-direction: column;
  }
  
  .lp_area .sec.--01 .sec_img02{
    width: calc( 340 *(100vw / 1400));
    margin: 0;
  }
  
  .lp_area .sec.--01 .sec_img02 > a{
    position: relative;
  }
  
  .lp_area .sec.--01 .sec_img02 > a::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #13869D;
    z-index: -1;
  }
  
  .lp_area .sec.--01 .sec_img02 .sec_tax{
    display: block;
    position: initial;
    margin-top: calc( 14*(100vw / 1400));
  }
  
  .lp_area .sec.--01 .sec_img03{
    width: calc( 360*(100vw / 1400));
    margin: 0;
    margin-top: calc( 94*(100vw / 1400));
  }
  
  .lp_area .sec.--01 .sec_img03 > a{
    position: relative;
  }
  
  .lp_area .sec.--01 .sec_img03 > a::before{
    content: "";
    position: absolute;
    border: #13869D 1px solid;
    width: 100%;
    height: 100%;
    top: calc( -20*(100vw / 1400));
    left: calc( 22*(100vw / 1400));
    z-index: -1;
  }
  
  .lp_area .sec.--01 .sec_img03 .sec_tax{
    position: initial;
    margin-top: calc( 11*(100vw / 1400));
    text-align: right;
    justify-content: flex-end;
  }
  
  .lp_area .sec.--01 .sec_img03 .sec_tax li:nth-of-type(2){
    margin-right: 0;
  }
  
  .lp_area .sec.--01 .sec_check_btn a {
    margin-top: calc( 75*(100vw / 1400));
  }
}

@media only screen and (min-width: 1401px) {
  .lp_area .sec.--01{
    width: 1200px;
    padding-top: 95px;
  }
  
  .lp_area .sec.--01 .sec_img_wrap.--01{
    width: 460px;
  }

  .lp_area .sec.--01 .sec_img_wrap.--01 .sec_head span:first-of-type {
    top: 210px;
    right: -579px;
  }
  
  .lp_area .sec.--01 .sec_img_wrap.--01 .sec_head span:last-of-type {
    top: 165px;
    left: -117px;
  }
  
  .lp_area .sec.--01 .sec_img_wrap.--02{
    margin-top: 105px;
    gap: 100px;
    margin-left: 210px;
  }

  .lp_area .sec.--01 .sec_img02{
    width: 340px;
  }

  .lp_area .sec.--01 .sec_img02 .sec_tax{
    margin-top: 14px;
  }
  
  .lp_area .sec.--01 .sec_img03{
    width: 360px;
    margin-top: 94px;
  }
  
  .lp_area .sec.--01 .sec_img03 > a::before{
    top: -20px;
    left: 22px;
  }
  
  .lp_area .sec.--01 .sec_img03 .sec_tax{
    margin-top: 11px;
  }
  
  .lp_area .sec.--01 .sec_check_btn a {
    margin-top: 75px;
  }
}

/*========================================================
section --02
========================================================*/
.lp_area .sec.--02{
  position: relative;
  margin-top: calc(70* (100vw / 390 ));
  padding-bottom: calc( 70 *(100vw / 390));
  background: #FAF6F0;
}
.lp_area .sec.--02::before{
  content: "";
  position: absolute;
  background-image: url(../img/sp_orange_bg.png);
  top: 0;
  left: 0;
  background-size: cover;
  width: calc( 390 *(100vw / 390));
  height: calc( 20*(100vw / 390));
  background-repeat: repeat-x;
}

.lp_area .sec.--02 .sec_img_wrap{
  position: relative;
}

.lp_area .sec.--02 .img01{
  position: relative;
  width: calc( 280*(100vw / 390));
  margin-left: calc( 20*(100vw / 390));
  padding-top: calc( 67*(100vw / 390));
}

.lp_area .sec.--02 .img02{
  position: relative;
  width: calc( 280*(100vw / 390));
  margin-left: auto;
  margin-right: calc( 20*(100vw / 390));
  margin-top: calc( 80*(100vw / 390));
}

.lp_area .sec.--02 .sec_sub_head{
  color: #CC8976;
  position: absolute;
  top: calc( 504*(100vw / 390));
  left: calc( 43*(100vw / 390));
  text-align: left;
  font-size: calc( 34*(100vw / 390));
}

.lp_area .sec.--02 .sec_tax{
  flex-direction: column;
}

.lp_area .sec.--02 .sec_check_btn a{
  background-color: #cc8976;
  margin-top: calc( 50*(100vw / 390));
}


@media only screen and (min-width: 560px) {
  .lp_area .sec.--02{
    width: calc(1200* (100vw / 1400 ));
    margin: auto;
    position: relative;
    margin-top: calc(150* (100vw / 1400 ));
    padding-bottom: calc( 80 *(100vw / 1400));
    background: #FAF6F0;
  }
  .lp_area .sec.--02::before{
    content: "";
    position: absolute;
    background-image: url(../img/orange_bg.png);
    top: 0;
    left: 0;
    background-size: cover;
    width: calc( 1200 *(100vw / 1400));
    height: calc( 30*(100vw / 1400));
    background-repeat: repeat-x;
  }
  
  .lp_area .sec.--02 .sec_img_wrap{
    position: relative;
    display: flex;
    flex-direction: row-reverse;
    align-items: flex-start;
    justify-content: flex-end;
    gap: calc(60* (100vw / 1400 ));
    padding-top: calc(110* (100vw / 1400 ));
    margin-left: calc(110* (100vw / 1400 ));
  }
  
  .lp_area .sec.--02 .img01{
    position: relative;
    width: calc( 400*(100vw / 1400));
    margin-left: 0;
    padding-top: 0;
  }
  
  .lp_area .sec.--02 .img02{
    position: initial;
    width: calc( 400*(100vw / 1400));
    margin-left: 0;
    margin-right: 0;
    margin-top: calc( 100*(100vw / 1400));
  }
  
  .lp_area .sec.--02 .sec_sub_head{
    color: #CC8976;
    position: absolute;
    top: calc( 114*(100vw / 1400));
    left: calc( -10*(100vw / 1400));
    text-align: left;
    font-size: calc( 50*(100vw / 1400));
  }
  
  .lp_area .sec.--02 .sec_tax{
    flex-direction: column;
    left: calc(520* (100vw / 1400 ));
    bottom: calc(44* (100vw / 1400 ));
  }
  
  .lp_area .sec.--02 .sec_check_btn a{
    background-color: #cc8976;
    margin-top: calc( 60*(100vw / 1400));
  }

}

@media only screen and (min-width: 1401px) {
  .lp_area .sec.--02{
    width: 1200px;
    margin-top: 150px;
    padding-bottom: 80px;
  }
  .lp_area .sec.--02::before{
    width: 1200px;
    height: 30px;
  }
  
  .lp_area .sec.--02 .sec_img_wrap{
    gap: 60px;
    padding-top: 110px;
    margin-left: 110px;
  }
  
  .lp_area .sec.--02 .img01{
    width: 400px;
  }
  
  .lp_area .sec.--02 .img02{
    width: 400px;
    margin-top: 100px;
  }
  
  .lp_area .sec.--02 .sec_sub_head{
    top: 114px;
    left: -10px;
    font-size: 50px;
    /* line-height: 1.2; */
  }
  
  .lp_area .sec.--02 .sec_tax{
    left: 520px;
    bottom: 44px;
  }
  
  .lp_area .sec.--02 .sec_check_btn a{
    margin-top: 60px;
  }

}

/*========================================================
section --03
========================================================*/
.lp_area .sec.--03{
  margin-top: calc(163 * (100vw / 390 ));
}
.lp_area .sec.--03 .sec_inner{
  position: relative;
}

.lp_area .sec.--03 .sec_img{
  position: relative;
  width: calc( 300*(100vw / 390));
  margin: auto;
}

.lp_area .sec.--03 .sec_img::before{
  content: "";
  position: absolute;
  width: calc( 180*(100vw / 390));
  height: calc( 270*(100vw / 390));
  top: calc( -25*(100vw / 390));
  left: calc( -25*(100vw / 390));
  background: #E2D085;
}


.lp_area .sec.--03 .sec_tax {
  position: initial;
  margin-top: calc( 14*(100vw / 390));
  margin-left: calc( 45*(100vw / 390));
}

.lp_area .sec.--03 .sec_head_wrap {
  position: absolute;
  text-align: right;
  top: calc( -88 *(100vw / 390));
  right: calc( 17*(100vw / 390));
}

.lp_area .sec.--03 .sec_check_btn a{
  background-color: #E2D085;
  margin-top: calc( 46*(100vw / 390));
}

@media only screen and (min-width: 560px) {
  .lp_area .sec.--03{
    width: calc(1200* (100vw / 1400 ));
    margin: auto;
    margin-top: calc(150 * (100vw / 1400 ));
  }
  .lp_area .sec.--03 .sec_inner{
    display: flex;
    align-items: flex-start;
    justify-content: center;
    position: relative;
    gap: calc(90* (100vw / 1400 ));
  }
  
  .lp_area .sec.--03 .sec_img{
    position: relative;
    width: calc( 460*(100vw / 1400));
    margin: 0;
  }
  
  .lp_area .sec.--03 .sec_img::before{
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: calc( 20*(100vw / 1400));
    left: calc( -20*(100vw / 1400));
    background: #E2D085;
  }
  
  .lp_area .sec.--03 .sec_tax {
    position: initial;
    margin-top: calc( 21*(100vw / 1400));
    margin-left: 0;
  }
  
  .lp_area .sec.--03 .sec_head_wrap {
    position: initial;
    text-align: left;
    margin-top: calc(209* (100vw / 1400 ));
  }
  
  .lp_area .sec.--03 .sec_sub_head {
    text-align: left;
    line-height: 1.2;
  }
  
  .lp_area .sec.--03 .sec_check_btn a{
    background-color: #E2D085;
    margin: 0;
    margin-top: calc( 76*(100vw / 1400));
    margin-left: calc( -7*(100vw / 1400));
  }
}

@media only screen and (min-width: 1401px) {
  .lp_area .sec.--03{
    width: 1200px;
    margin-top: 150px;
  }
  .lp_area .sec.--03 .sec_inner{
    gap: 90px;
  }
  
  .lp_area .sec.--03 .sec_img{
    width: 460px;
  }
  
  .lp_area .sec.--03 .sec_img::before{
    top: 20px;
    left: -20px;
  }
  
  .lp_area .sec.--03 .sec_tax {
    margin-top: 21px;
  }
  
  .lp_area .sec.--03 .sec_head_wrap {
    margin-top: 209px;
  }

  .lp_area .sec.--03 .sec_check_btn a{
    margin-top: 76px;
    margin-left: -7px;
  }
}


/*========================================================
section --04
========================================================*/
.lp_area .sec.--04{
  position: relative;
  margin-top: calc(70* (100vw / 390 ));
  padding-bottom: calc( 70 *(100vw / 390));
  background: #FAF6F0;
}
.lp_area .sec.--04::before{
  content: "";
  position: absolute;
  background-image: url(../img/sp_green_bg.png);
  top: 0;
  left: 0;
  background-size: cover;
  width: calc( 390 *(100vw / 390));
  height: calc( 20*(100vw / 390));
  background-repeat: repeat-x;
}

.lp_area .sec.--04 .sec_img_wrap{
  position: relative;
}

.lp_area .sec.--04 .img01{
  position: relative;
  width: calc( 280*(100vw / 390));
  margin-left: calc( 20*(100vw / 390));
  padding-top: calc( 70*(100vw / 390));
}

.lp_area .sec.--04 .img02{
  position: relative;
  width: calc( 280*(100vw / 390));
  margin-left: auto;
  margin-right: calc( 20*(100vw / 390));
  margin-top: calc( 50*(100vw / 390));
}

.lp_area .sec.--04 .sec_head_wrap{
  position: absolute;
  top: calc( 456*(100vw / 390));
  left: calc( 47*(100vw / 390));
}

.lp_area .sec.--04 .sec_head{
  color: transparent;
  -webkit-text-stroke: 1px #358B7B;
  text-stroke: 1px #358B7B;
  text-align: left;
}

.lp_area .sec.--04 .sec_tax{
  flex-direction: column;
}

.lp_area .sec.--04 .sec_check_btn a{
  background-color: #358B7B;
  margin-top: calc( 50*(100vw / 390));
}

@media only screen and (min-width: 560px) {
  .lp_area .sec.--04{
    position: relative;
    width: calc(1200* (100vw / 1400 ));
    margin: auto;
    margin-top: calc(170* (100vw / 1400 ));
    padding-bottom: calc( 80 *(100vw / 1400));
    background: #FAF6F0;
  }
  .lp_area .sec.--04::before{
    content: "";
    position: absolute;
    background-image: url(../img/green_bg.png);
    top: 0;
    left: 0;
    background-size: cover;
    width: calc( 1200 *(100vw / 1400));
    height: calc( 30*(100vw / 1400));
    background-repeat: repeat-x;
  }
  
  .lp_area .sec.--04 .sec_img_wrap{
    position: relative;
  }
  
  .lp_area .sec.--04 .sec_img_wrap .sec_list{
    display: flex;
    justify-content: center;
    gap: calc(20* (100vw / 1400 ));
    padding-top: calc(110* (100vw / 1400 ));
  }
  
  .lp_area .sec.--04 .sec_img_wrap .sec_head{ 
    padding-left: 0;
    writing-mode: vertical-rl;
    white-space: nowrap;
  }
  
  .lp_area .sec.--04 .sec_img_wrap .sec_head span:first-of-type {
    position: absolute;
    top: calc(-446 * (100vw / 1400 ));
    right: calc(-1122 * (100vw / 1400 ));
  }
  
  .lp_area .sec.--04 .sec_img_wrap .sec_head span:last-of-type {
    padding-left: 0;
    position: absolute;
    top: calc(-515 * (100vw / 1400 ));
    left: calc(80 * (100vw / 1400 ));
  }
  

  .lp_area .sec.--04 .img01{
    position: relative;
    width: calc( 400*(100vw / 1400));
    margin: 0;
    padding: 0;
  }
  
  .lp_area .sec.--04 .img02{
    position: relative;
    width: calc( 400*(100vw / 1400));
    margin: 0;
  }
  
  .lp_area .sec.--04 .sec_head_wrap{
    display: contents;
  }

  .lp_area .sec.--04 .sec_tax{
    flex-direction: column;
  }
  
  .lp_area .sec.--04 .sec_check_btn a{
    background-color: #358B7B;
    margin-top: calc( 60 *(100vw / 1400));
  }
}


@media only screen and (min-width: 1401px) {
  .lp_area .sec.--04{
    width: 1200px;
    margin-top: 170px;
    padding-bottom: 80px;
  }
  .lp_area .sec.--04::before{
    width: 1200px;
    height: 30px;
  }
  
  .lp_area .sec.--04 .sec_img_wrap .sec_list{
    gap: 20px;
    padding-top: 110px;
  }
  
  .lp_area .sec.--04 .sec_img_wrap .sec_head span:first-of-type {
    top: -446px;
    right: -1122px;
  }
  
  .lp_area .sec.--04 .sec_img_wrap .sec_head span:last-of-type {
    top: -515px;
    left: 80px;
  }

  .lp_area .sec.--04 .img01{
    width: 400px;
  }
  
  .lp_area .sec.--04 .img02{
    width: 400px;
  }
  
  .lp_area .sec.--04 .sec_check_btn a{
    margin-top: 60px;
  }
}

/*========================================================
section --05
========================================================*/
.lp_area .sec.--05{
  background: #F5F5F5;
  margin-top: calc(50 * (100vw / 390 ));
  padding-top: calc( 58*(100vw / 390));
  padding-bottom: calc( 50 *(100vw / 390));
}

.lp_area .sec.--05 .sec_head{
  text-align: center;
  font-size: calc( 26*(100vw / 390));
}

.lp_area .sec.--05 .sec_head span{
  font-size: calc( 26*(100vw / 390));
  font-weight: 500;
}

.lp_area .sec.--05 .sec_list{
  width: calc( 350*(100vw / 390));
  margin: auto;
  margin-top: calc( 20*(100vw / 390));
  background: #fff;
  display: grid;
  grid-template-columns: repeat(2 , 1fr);
}

.lp_area .sec.--05 .sec_list > li{
  position: relative;
  width: calc( 145 *(100vw / 390));
  margin: auto;
  margin-top: calc( 30*(100vw / 390));
  padding-bottom: calc( 30*(100vw / 390));
  border-bottom: #A2A2A2 1px solid;
}

.lp_area .sec.--05 .sec_list > li:nth-of-type(odd)::before{
  content: "";
  position: absolute;
  background: #A2A2A2;
  width: 1px;
  height: calc( 289*(100vw / 390)) ;
  top: calc( -15 *(100vw / 390));
  right: calc( -15*(100vw / 390));
}

.lp_area .sec.--05 .sec_tax{
  display: block;
  position: initial;
  justify-content: center;
  text-align: center;
  margin-top: calc( 13*(100vw / 390));
  letter-spacing: 0.08em;
}

.lp_area .sec.--05 .sec_tax li{
  text-decoration: none;
}

.lp_area .sec.--05 .sec_btn{
  margin: auto;
  margin-top: calc( 6*(100vw / 390));
}


@media only screen and (min-width: 560px) {
  .lp_area .sec.--05{
    background: #F2F2F2;
    margin-top: calc(150 * (100vw / 1400 ));
    padding-top: calc( 110 *(100vw / 1400));
    padding-bottom: calc( 100 *(100vw / 1400));
  }
  
  .lp_area .sec.--05 .sec_img_wrap {
    width: calc( 1102*(100vw / 1400));
    margin: auto;
    background: #fff;
  }

  .lp_area .sec.--05 .sec_head{
    font-size: calc( 36*(100vw / 1400));
  }

  .lp_area .sec.--05 .sec_head span{
    font-size: calc( 36*(100vw / 1400));
  }

  .lp_area .sec.--05 .sec_list{
    width: calc( 1002*(100vw / 1400));
    margin-top: calc( 50 *(100vw / 1400));
    display: grid;
    grid-template-columns: repeat(3 , 1fr);
    background: transparent;
    gap: calc(22* (100vw / 1400 )) calc(50* (100vw / 1400 ));
    padding-top: calc(50* (100vw / 1400 ));
    padding-bottom: calc( 26 *(100vw / 1400));
  }
  
  .lp_area .sec.--05 .sec_list > li{
    width: calc( 300 *(100vw / 1400));
    margin-top: 0;
    padding-bottom: calc( 40 *(100vw / 1400));
  }
  
  .lp_area .sec.--05 .sec_list > li a{
    width: calc( 220 *(100vw / 1400));
    margin: auto;
  }
  
  .lp_area .sec.--05 .sec_list > li:nth-of-type(odd)::before{
    display: none;
  }
  
  .lp_area .sec.--05 .sec_list > li:nth-of-type(2)::before,
  .lp_area .sec.--05 .sec_list > li:nth-of-type(5)::before,
  .lp_area .sec.--05 .sec_list > li:nth-of-type(8)::before,
  .lp_area .sec.--05 .sec_list > li:nth-of-type(11)::before
  {
    display: block;
    content: "";
    position: absolute;
    background: #A2A2A2;
    width: 1px;
    height: calc( 375 *(100vw / 1400)) ;
    top: calc( 0 *(100vw / 1400));
    right: calc( -25 *(100vw / 1400));
  }
  
  .lp_area .sec.--05 .sec_list > li:nth-of-type(2)::after,
  .lp_area .sec.--05 .sec_list > li:nth-of-type(5)::after,
  .lp_area .sec.--05 .sec_list > li:nth-of-type(8)::after,
  .lp_area .sec.--05 .sec_list > li:nth-of-type(11)::after
  {
    content: "";
    position: absolute;
    background: #A2A2A2;
    width: 1px;
    height: calc( 375 *(100vw / 1400)) ;
    top: calc( 0 *(100vw / 1400));
    left: calc( -25 *(100vw / 1400));
  }
  
  .lp_area .sec.--05 .sec_tax{
    position: initial;
    justify-content: center;
    text-align: center;
    margin-top: calc( 16*(100vw / 1400));
  }
  
  .lp_area .sec.--05 .sec_btn{
    margin: auto;
    margin-top: calc( 6*(100vw / 1400));
  }
}


@media only screen and (min-width: 1401px) {
  .lp_area .sec.--05{
    margin-top: 150px;
    padding-top: 110px;
    padding-bottom: 100px;
  }
  
  .lp_area .sec.--05 .sec_img_wrap {
    width: 1102px;
  }

  .lp_area .sec.--05 .sec_head{
    font-size: 36px;
  }

  .lp_area .sec.--05 .sec_head span{
    font-size: 36px;
  }

  .lp_area .sec.--05 .sec_list{
    width: 1002px;
    margin-top: 50px;
    gap: 23px 50px;
    padding-top: 50px;
    padding-bottom: 26px;
  }
  
  .lp_area .sec.--05 .sec_list > li{
    width: 300px;
    padding-bottom: 40px;
  }
  
  .lp_area .sec.--05 .sec_list > li a{
    width: 220px;
  }
  
  .lp_area .sec.--05 .sec_list > li:nth-of-type(2)::before,
  .lp_area .sec.--05 .sec_list > li:nth-of-type(5)::before,
  .lp_area .sec.--05 .sec_list > li:nth-of-type(8)::before,
  .lp_area .sec.--05 .sec_list > li:nth-of-type(11)::before
  {
    width: 1px;
    height: 375px;
    right: -25px;
  }
  
  .lp_area .sec.--05 .sec_list > li:nth-of-type(2)::after,
  .lp_area .sec.--05 .sec_list > li:nth-of-type(5)::after,
  .lp_area .sec.--05 .sec_list > li:nth-of-type(8)::after,
  .lp_area .sec.--05 .sec_list > li:nth-of-type(11)::after
  {
    width: 1px;
    height: 375px;
    left: -25px;
  }
  
  .lp_area .sec.--05 .sec_tax{
    margin-top: 16px;
  }
  
  .lp_area .sec.--05 .sec_btn{
    margin-top: 6px;
  }
}


/*========================================================
--actionBtn
========================================================*/
.lp_area .actionBtn{
  width: calc( 300*(100vw / 390));
  margin: auto;
  margin-top: calc( 120*(100vw / 390));
}


@media only screen and (min-width: 560px) {
  .lp_area .actionBtn{
    width: calc(370* (100vw / 1400 ));
    max-width: 370px;
    margin-top: calc(120* (100vw / 1400 ));
  }

}


@media only screen and (min-width: 1401px) {  
  .lp_area .actionBtn{
    margin-top: 116px;
  }
}


/*========================================================
animation
========================================================*/
.delay{
  transition-delay: 1s;
}

/* 定義 */
.mv_fade
{
  opacity: 0;
  transition: opacity 1s ease;
  transition-duration: 1s;
}
@media only screen and (min-width: 560px) {
.ttl_fade_up
{
  opacity: 0;
  transition: opacity 1s ease , transform 1s ease ;
  transition-duration: 1s;
  transform: translateY(20px);
}
}
.fade{
  opacity: 0;
  transition: opacity 1s ease;
  transition-duration: 1s;
}

.fade_up
{
  opacity: 0;
  transition: opacity 1s ease , transform 1s ease ;
  transform: translateY(20px);
}


.js_fade_left{
  opacity: 0;
  transition: opacity 1s ease transform 1s ease;
  transition-duration: 0.8s;
  transform: translateX(-20px);
}


.mv_fade.fade_in
{
  opacity: 1;
}

.fade_up.fade_in
{
  opacity: 1;
  transform: translateY(0);
}
@media only screen and (min-width: 560px) {
  .ttl_fade_up.fade_in
  {
    opacity: 1;
    transform: translateY(0);
  }
}


/* mv */
.fade.fade_in{
  opacity: 1;
}

.fade_up.--02{
  transition-delay: 1s;
}
.mv_fade.--03{
  transition-delay: 1.5s;
}


.js_fade_left.fade_in{
  opacity: 1;
  transform: translateX(0);
}

.fade_delay{
  opacity: 0;
  transition: opacity 1s ease , transform 1s ease;
  transition-duration: 0.8s;
}

.fade_delay.fade_in{
  transform: translateY(0);
  opacity: 1;
  transition-delay: 0.5s;
}



.fade.--02{
  transition-delay: 0.1s;
}

.fade.--03{
  transition-delay: 0.2s;
}

.fade.--04{
  transition-delay: 0.3s;
}

.fade.--05{
  transition-delay: 0.4s;
}

.fade.--06{
  transition-delay: 0.5s;
}

.fade.--07{
  transition-delay: 0.6s;
}

.fade.--08{
  transition-delay: 0.7s;
}

.fade.--09{
  transition-delay: 0.8s;
}

.fade.--10{
  transition-delay: 0.9s;
}

.fade.--11{
  transition-delay: 1s;
}

.fade.--12{
  transition-delay: 1.1s;
}

/* ▽_____________ ttl_animation ______________▽ */

@keyframes animation-sample3{
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(-10deg);
  }
}

@keyframes animation-sample4{
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(10deg);
  }
}
@keyframes animation-sample2{
  0% {
    transform: translateX(-50% ) rotate(0deg);
  }
  100% {
    transform: translateX(-50% ) rotate(10deg);
  }
}

.lp_area .sec.--01 .js_rotate.fade_in{
  animation-name: animation-sample3;
  animation-duration: 1.5s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}

.lp_area .sec.--01 .js_rotate.fade_in::before{
  display: block;
  animation-name: animation-sample4;
  animation-duration: 1.5s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}

.lp_area .sec.--03 .sec_img02 span{
  animation-name: animation-sample2;
  animation-duration: 1.5s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}


@media only screen and (max-width: 559px) {
  .sp_js_fade_left{
    opacity: 0;
    transition: opacity 1s ease , transform 1s ease;
    transform: translateX(-20px);
  }
  .sp_js_fade_left.fade_in{
    opacity: 1;
    transform: translateX(0);
  }
}

.lp_area .mv_stamp_inner span:last-of-type:before{
  animation-name: animation-sample;
    animation-duration: 30s;
    animation-iteration-count: infinite;
}

@keyframes animation-sample{
  100% { transform:rotate(360deg); }
}


.mv_img_js::before{
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background: #13869D;
  transform: translateY(0);
  transition:  transform 1.5s ease;
}

.mv_img_js.fade_in::before{
  transform: translateY(-100%);
}